android studio集成極光推送的操作步驟
之前使用的是小米推送,感覺(jué)還不錯(cuò),集成簡(jiǎn)單,這次使用極光推送,看文檔,很多用不到的東西看的好亂,所以這次記錄:
第一、在極光配置信息,我是因?yàn)閕so先創(chuàng)建應(yīng)用了,我直接配置自己的信息就行,就填寫(xiě)一個(gè)包名。

第二、build.gradle文件的配置:
android {
......
defaultConfig {
........
manifestPlaceholders = [
JPUSH_PKGNAME : “應(yīng)用包名”,//JPush上注冊(cè)的包名
JPUSH_APPKEY : "你的appkey", //JPush上注冊(cè)的包名對(duì)應(yīng)的appkey.
JPUSH_CHANNEL : "developer-default", //暫時(shí)填寫(xiě)默認(rèn)值即可.
]
......
}
......
}
dependencies {
//極光推送
compile 'cn.jiguang.sdk:jpush:3.0.9' // 此處以JPush 3.0.9 版本為例。
compile 'cn.jiguang.sdk:jcore:1.1.7' // 此處以JCore 1.1.7 版本為例。
}
第三、自定義自己的廣播接收器(若是項(xiàng)目只需要接受通知,這一步可以忽略,一般都會(huì)有點(diǎn)擊通知欄跳轉(zhuǎn)不同界面)自定義的廣播接收器:接收消息和點(diǎn)擊等等都會(huì)到接收器
注意:這里有一個(gè)坑,不自定義,默認(rèn)點(diǎn)擊會(huì)啟動(dòng)應(yīng)用
接收自定義消息需要:
String extras = bundle.getString(JPushInterface.EXTRA_EXTRA);
才可以獲得自定義消息,如果直接在intent處斷點(diǎn)查看后臺(tái)推送的消息是看不到任何數(shù)據(jù)的(這個(gè)坑我弄了好久,一直以為是后臺(tái)沒(méi)有推送到消息);下面主要對(duì)接收推送消息、點(diǎn)擊通知欄消息、穿透消息做了處理,這里根據(jù)公司要求處理就行。

第四、就是在application中初始化推送

第五、AndroidManifest的配置:官方文檔這里有點(diǎn)亂,不知道要寫(xiě)那些,按我寫(xiě)的就可以了。
<permission
android:name="您應(yīng)用的包名.permission.JPUSH_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="您應(yīng)用的包名.permission.JPUSH_MESSAGE" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- Optional. Required for location feature -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <!-- 用于開(kāi)啟 debug 版本的應(yīng)用在6.0 系統(tǒng)上 層疊窗口權(quán)限 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<receiver
android:name="您自己定義的Receiver"
android:enabled="true">
<intent-filter>
<!--Required 用戶注冊(cè)SDK的intent-->
<action android:name="cn.jpush.android.intent.REGISTRATION" />
<!--Required 用戶接收SDK消息的intent-->
<action android:name="cn.jpush.android.intent.MESSAGE_RECEIVED" />
<!--Required 用戶接收SDK通知欄信息的intent-->
<action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" />
<!--Required 用戶打開(kāi)自定義通知欄的intent-->
<action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" />
<!-- 接收網(wǎng)絡(luò)變化 連接/斷開(kāi) since 1.6.3 -->
<action android:name="cn.jpush.android.intent.CONNECTION" />
<category android:name="您應(yīng)用的包名" />
</intent-filter>
</receiver>
<meta-data android:name="JPUSH_APPKEY" android:value="您應(yīng)用的Appkey"/>
第六、設(shè)置別名和標(biāo)簽,設(shè)置別名和標(biāo)簽還有其他方法,我這里使用的是這一種,它是一種覆蓋設(shè)置。具體可以去看極光的文檔,這塊挺簡(jiǎn)單的。
//設(shè)置激光推送的別名和標(biāo)簽 Set<String> tags = new HashSet<>(); tags.add(“標(biāo)簽”); JPushInterface.setAliasAndTags(APPApplication.getInstance(), “別名”, tags, null);
退出登錄時(shí):
//注銷別名和標(biāo)簽JPushInterface.setAliasAndTags(APPApplication.getInstance(), "", null, null);
至此就完成了極光推送的集成,哪里有不對(duì)的地方可以留言。
這里說(shuō)一個(gè)問(wèn)題:我在廣播接收器中l(wèi)og打印東西,不知什么原因一直沒(méi)打印出來(lái),我以為是廣播接收不到推送,但是有通知欄提示的,搜了好多注冊(cè)不成功的問(wèn)題浪費(fèi)了很多時(shí)間;所以自己遇到一個(gè)問(wèn)題感覺(jué)沒(méi)問(wèn)題就想想是不是其他原因。
以上這篇android studio集成極光推送的操作步驟就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Android應(yīng)用開(kāi)發(fā)中實(shí)現(xiàn)apk皮膚文件換膚的思路分析
這篇文章主要介紹了Android應(yīng)用開(kāi)發(fā)中實(shí)現(xiàn)apk皮膚文件換膚的思路分析,包括布局和主要的皮膚更換邏輯實(shí)現(xiàn),需要的朋友可以參考下2016-02-02
Android 自定義驗(yàn)證碼輸入框的實(shí)例代碼(支持粘貼連續(xù)性)
這篇文章主要介紹了Android 自定義驗(yàn)證碼輸入框的實(shí)例代碼(支持粘貼連續(xù)性),代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10
Android studio開(kāi)發(fā)小型對(duì)話機(jī)器人app(實(shí)例代碼)
這篇文章主要介紹了Android studio開(kāi)發(fā)一個(gè)小型對(duì)話機(jī)器人app,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
Android Studio 3.3.2 正式版的安裝教程圖解
這篇文章主要介紹了Android Studio 3.3.2 正式版的安裝教程圖解,本文分步驟通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),需要的朋友可以參考下2020-02-02
Android中一個(gè)應(yīng)用實(shí)現(xiàn)多個(gè)圖標(biāo)的幾種方式
這篇文章主要給大家介紹了在Android中一個(gè)應(yīng)用如何實(shí)現(xiàn)多個(gè)圖標(biāo)的幾種方式,其中包括了多Activity + intent-filter方式、activity-alias方式以及網(wǎng)頁(yè)標(biāo)簽-添加快捷方式,分別給出了詳細(xì)的示例代碼,需要的朋友可以參考借鑒。2017-05-05
深入剖析Android系統(tǒng)中Service和IntentService的區(qū)別
這篇文章主要介紹了Android系統(tǒng)中Service和IntentService的區(qū)別,與普通的服務(wù)相比,IntentService可以開(kāi)啟單獨(dú)的線程來(lái)處理intent請(qǐng)求,需要的朋友可以參考下2016-04-04
Android ImageButton自定義按鈕的按下效果的代碼實(shí)現(xiàn)方法分享
這篇文章主要介紹了Android ImageButton自定義按鈕的按下效果的代碼實(shí)現(xiàn)方法,需要的朋友可以參考下2014-02-02
Android多國(guó)語(yǔ)言轉(zhuǎn)換Excel及Excel轉(zhuǎn)換為string詳解
這篇文章主要給大家介紹了關(guān)于Android多國(guó)語(yǔ)言轉(zhuǎn)換Excel以及Excel轉(zhuǎn)換為string的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧2019-01-01

