成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

震驚!安卓推送SDK集成居然如此簡單!-創(chuàng)新互聯(lián)

震驚!安卓推送SDK集成居然如此簡單!

概述

公司準(zhǔn)備采用個推作為第三方推送平臺,我作為客戶端的頭號小鳥,掐指一算已經(jīng)畢業(yè) 0.1 年了,Leader 準(zhǔn)備把這個簡單而又獨(dú)立的功能點(diǎn)交給我來處理,我緊張兮兮的打開 官網(wǎng)集成文檔 學(xué)習(xí)了起來。其實(shí)早在自己大二的時(shí)候就集成過個推 SDK,溜達(dá)一圈又回來集成個推推送SDK了,發(fā)現(xiàn)現(xiàn)在的個推 SDK 與當(dāng)年相比,集成起來真的方便多了。這次集成的是Android推送SDK,希望這篇文章,可以讓同學(xué)們可以更加快捷的集成個推推送。

公司主營業(yè)務(wù):網(wǎng)站制作、網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出河北免費(fèi)做網(wǎng)站回饋大家。

思維導(dǎo)圖

詳細(xì)步驟

下載 demo

我的師傅大鳥哥告訴我,集成各類 SDK 的第一步驟都是下載個 Demo,先把 Demo 跑起來看看是什么鬼。咱也不敢問,咱也不敢說,先去 下載個Demo玩玩。我選擇的是國內(nèi)版本的個推 SDK,大家可以自行選擇要下載的版本。使用 AS 3.1 把  Getui_SDK_Demo_AS_maven 這個工程直接運(yùn)行起來,出現(xiàn)了下面這個界面(此處已經(jīng)對我個人參數(shù)進(jìn)行了手動馬賽克)。

震驚!安卓推送SDK集成居然如此簡單!"/> 好了,按我大鳥哥的意思至少 demo 已經(jīng)成功運(yùn)行起來了,接下去就是去把上述的 APPID,APPKey 等參數(shù)換成自己的,那么這些參數(shù)又是怎么來的呢?

創(chuàng)建個推應(yīng)用

看完 Demo 后,慌兮兮打開官網(wǎng)集成文檔,原來那些參數(shù)是需要創(chuàng)建應(yīng)用才會獲得的,而 cid 是個推SDK 回調(diào)的,沒啥說的,那就 “注冊登錄-創(chuàng)建應(yīng)用-獲取配置” 三連擊

注冊登錄賬號:

震驚!安卓推送SDK集成居然如此簡單!"/>

創(chuàng)建應(yīng)用

登入成功后,點(diǎn)擊我的應(yīng)用進(jìn)入,再接著點(diǎn)擊右上角的《創(chuàng)建應(yīng)用》就可以創(chuàng)建屬于自己的應(yīng)用了,因?yàn)槲乙呀?jīng)創(chuàng)建完成,所以此處有城墻一樣厚的馬賽克????????????

震驚!安卓推送SDK集成居然如此簡單!"/>

填寫自身 APP 的基礎(chǔ)信息

震驚!安卓推送SDK集成居然如此簡單!"/> 敲黑板!??!,iOS 是默認(rèn)不勾選的,聽說 iOS 有自帶的推送系統(tǒng)?先不管了,勾上再說,他們愛用不用。

獲取配置數(shù)據(jù)

由于我已經(jīng)注冊完成了,填完后的界面就要靠大家自行腦補(bǔ)了。應(yīng)用創(chuàng)建成功后,就可以查看我們創(chuàng)建的 APP 所綁定的配置信息了。

震驚!安卓推送SDK集成居然如此簡單!"/> 看到這里,我終于知道了之前 Demo 里面的那些配置信息是哪里來的了,為了保證我這些參數(shù)是有效的, 我還來了一波騷操作: 把 Demo 里面的工程的包名換成自己創(chuàng)建 APP 的包名,appid等信息也進(jìn)行了替換,發(fā)現(xiàn)成功拿到了 cid ,問了下他們技術(shù)支持,大概意思是 只要拿到 cid,集成就完成了 90 %?。?! ,鳥弟我激動的搓起了小手。后面的思路就清晰了,無非是把 Demo 里東西拷到自己的項(xiàng)目里面就完事了嘛。

添加依賴及配置

我使用 Maven 的方式集成了  2.13.2.0 版本的 SDK,選用 Maven是為了方(偷)便(懶)的集成!如果是選擇手動集成的, 請瘋狂戳我 先看下他們的資料包的內(nèi)容

震驚!安卓推送SDK集成居然如此簡單!"/> 看這個資料包,發(fā)現(xiàn)要導(dǎo)入的東西還是蠻多的, 各種資源,我選擇了 Maven 集成,那么 jar 包& so 就無需導(dǎo)入了

添加 maven 庫

  • 在項(xiàng)目根目錄的 build.gradle 中添加 maven 庫,不然 load 不到 jar 包
allprojects {     repositories {         maven {           url 'http://mvn.gt.igexin.com/nexus/content/repositories/releases'         }     } } 復(fù)制代碼
  • 在 項(xiàng)目/app 目錄下的 build.gradle 中配置jar 包
dependencies {     compile fileTree(dir: 'libs', include: ['*.jar'])     compile 'com.getui:sdk:2.13.2.0' } 復(fù)制代碼

配置之前創(chuàng)建的 appid 等

依葫蘆畫瓢,這里就直接從 demo 那邊拷過來就行了 千萬千萬要小心,認(rèn)真核對每一個參數(shù),如果出現(xiàn)空格或者 Appid 與 AppKey寫反這類的 低級錯誤真的要檢查到哭????????????

manifestPlaceholders = [     GETUI_APP_ID : "你的 APPID",     GETUI_APP_KEY : "你的 APP_KEY",     GETUI_APP_SECRET : "你的 APP_SECRET" ] 復(fù)制代碼

導(dǎo)入個推 res 文件

千萬千萬別忘了,我之前就在這個地方踩了坑,使用 maven 集成就不再需要 so 文件,切記!

  • 把 Getui_SDK_Demo_AS_maven/資源文件/res 里面的文件一一對應(yīng)導(dǎo)入到自己項(xiàng)目中的 app/src/main/res 下面

配置可選權(quán)限

可選可不選的權(quán)限,我這邊是寫上了,因?yàn)槲翼?xiàng)目中正好也需要用到這些權(quán)限,美滋滋~

      <!-- 支持iBeancon 需要藍(lán)牙權(quán)限 -->     <uses-permission android:name="android.permission.BLUETOOTH"/>     <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>     <!-- 支持個推3.0 電子圍欄功能 -->     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 復(fù)制代碼

配置自定義服務(wù)

Demo 里面還配置了自定義的 service,我也搞了后,官網(wǎng)上有這么一句話

為了讓推送服務(wù)在部分主流機(jī)型上更穩(wěn)定運(yùn)行,從2.9.5.0版本開始,個推支持第三方應(yīng)用配置使用自定義Service來作為推送服務(wù)運(yùn)行的載體

都這么說了,鳥弟我二話不說就 new 一個自定義服務(wù),進(jìn)行空實(shí)現(xiàn)即可

package com.xinwenwang.xy; import com.igexin.sdk.PushService; public class XyPushService extends PushService { } 復(fù)制代碼

新建的 service  千萬別忘了把新建的 service 注冊到 AndroidManifest.xml 中,多么痛的領(lǐng)悟

<service   android:name="com.xxxx.yyyy.XyPushService"   android:exported="true"   android:label="PushService"   android:process=":pushservice"> </service> 復(fù)制代碼

深入一想也可以理解為啥要加個空實(shí)現(xiàn)的 service,就像集成微信分享一樣,微信分享也要求繼承一個指定的 activity。

編寫集成

這么一步步的走下來,要配置挺多東西的,終于要開始初始化 SDK 了 ?????♀??????♀??????♀?

初始化 SDK

com.igexin.sdk.PushManager.getInstance().initialize(getApplicationContext(), com.xxxx.yyyy.XyPushService.class); 復(fù)制代碼

我這邊是在開屏頁初始化個推推送的,大家可以隨意,只要在 activity 初始化即可, 建議是初始化越早越好

接收推送服務(wù)事件

那么問題來了,搞了上面這么多東西,推送的消息或者透傳是怎么個接收法呢?一頭霧水有木有!我又跑回去看了看 Demo,發(fā)現(xiàn)還有個叫  DemoIntentService 的玩意,打開一看里面有很多很多的回調(diào),鳥哥說的話果然帶勁呀, Demo 理解透,項(xiàng)目集成快! 建議大家直接把 Demo 中的 DemoIntentService 拷到自己的項(xiàng)目中,如果需要修改一些DemoIntentService 里面的內(nèi)容,自便哈。記得修改個名字,不然放在自己的項(xiàng)目里面真的太 low 了!我暫名為 XyPushIntentService。

  • 在AndroidManifest.xml中配置上述 IntentService 類:
       <!-- 用戶自定義服務(wù)繼承自GTIntentService,作為SDK與APP橋梁服務(wù),用來接收各種消息和命令回復(fù)-->         <service android:name=".XyPushIntentService"             android:permission="android.permission.BIND_JOB_SERVICE"/> 復(fù)制代碼
  • 在個推SDK初始化后,注冊上述 IntentService 類
// XyPushIntentService 為第三方自定義的推送服務(wù)事件接收類 PushManager.getInstance().registerPushIntentService(getApplicationContext(), XyPushIntentService.class); 復(fù)制代碼

測試

總算集成完了,導(dǎo)入上述東西需要細(xì)心些哈,漏了一步有的你難受的。 項(xiàng)目跑起來后,在 XyPushIntentService 會有 cid 的回調(diào),最直觀的方法是在 logcat 里面輸入 clientid ,就可以看到在控制臺輸出日志了, 這個 clientID 相當(dāng)于此 APP 在該設(shè)備上的唯一識別碼。

震驚!安卓推送SDK集成居然如此簡單!"/> 最后一步肯定是創(chuàng)建通知了。 震驚!安卓推送SDK集成居然如此簡單!"/>

震驚!安卓推送SDK集成居然如此簡單!"/>

這邊只是創(chuàng)建了一個最最最簡單的樣式僅供參考,我看這界面上的功能估計(jì)可以滿足各種運(yùn)營的玩法了,我這邊就不獻(xiàn)丑了:)。  推送測試消息的時(shí)候,應(yīng)用一定要在前臺,在前臺,在前臺,重要的事情說三遍

#尾聲 首次集成這類大型 SDK 讓我意想不到的順利,我和我的小伙伴們都????驚呆了????,后面我再仔細(xì)閱讀了下個推的文檔,他們家的功能還是很齊全的,我僅是進(jìn)行了最基礎(chǔ)的集成而已,不過也可以滿足產(chǎn)品與運(yùn)營的需求了。不得不提一句,他們的技術(shù)支持服務(wù)確實(shí)夠勁(此處確實(shí)是一條廣告實(shí)錘了~),回復(fù)的快而準(zhǔn)?,F(xiàn)在我得趕緊去寫 Bug 了,告辭????????????~~~

原文鏈接: blog.csdn.net/u013651405/… 作者:吃飽了想睡

行業(yè)前沿、移動開發(fā)、數(shù)據(jù)建模等干貨內(nèi)容,盡在公眾號:個推技術(shù)學(xué)院

震驚!安卓推送SDK集成居然如此簡單!

分享文章:震驚!安卓推送SDK集成居然如此簡單!-創(chuàng)新互聯(lián)
鏈接分享:http://jinyejixie.com/article18/dijegp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站設(shè)計(jì)網(wǎng)站制作、自適應(yīng)網(wǎng)站、微信公眾號、網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
金坛市| 文山县| 肇庆市| 沂南县| 辰溪县| 文成县| 大关县| 图们市| 常山县| 博白县| 芮城县| 江陵县| 望都县| 荣成市| 庆阳市| 新平| 昭平县| 泽州县| 郯城县| 贡觉县| 额敏县| 巴马| 彰化县| 安平县| 禄劝| 天祝| 永仁县| 竹溪县| 南昌市| 山阴县| 涞源县| 神木县| 吉安市| 玛曲县| 郸城县| 黔西| 临武县| 北辰区| 陆河县| 克什克腾旗| 喀喇沁旗|