Flutter 極光推送业栅、多廠商離線推送秒咐、獲取不到Devicetoken

鎮(zhèn)樓圖附上


image.png

本文是根據(jù)極光官網(wǎng)的文檔操作后總結(jié)出:(寫的不盡詳細支出可以先看一下官方文檔,以便理解)

首先簡單的集成極光推送

碘裕、極光平臺創(chuàng)建項目携取,Android/IOS,具體配置 p12這里就不贅述了帮孔,網(wǎng)上一堆
雷滋、pubspec.yaml -> 引入極光插件 jpush_flutter: ^0.6.3
、公共處main中 初始化 創(chuàng)建回調(diào) 具體 如下:

void initState() {
super.initState();
///極光推送
this.initJpush();
}
initJpush() async {
JPush jpush = new JPush();
jpush.applyPushAuthority(
    new NotificationSettingsIOS(sound: true, alert: true, badge: true));
//獲取注冊的id
jpush.getRegistrationID().then((rid) {
 //這里說一下 若別處需要使用rid 如此調(diào)用   await jpush.getRegistrationID()
  print("獲取注冊的id:$rid");
});
//初始化
jpush.setup(
  appKey: "這里是極光平臺的appKey",
  channel: "thisChannel",
  production: false,
  debug: true, // 設(shè)置是否打印 debug 日志
);

//設(shè)置別名  實現(xiàn)指定用戶推送
jpush.setAlias("supperman").then((map) {
  print("設(shè)置別名成功");
});

try {
  //監(jiān)聽消息通知
  jpush.addEventHandler(
    // 接收通知回調(diào)方法文兢。
    onReceiveNotification: (Map<String, dynamic> message) async {
      print("flutter onReceiveNotification: $message");
    },
    // 點擊通知回調(diào)方法晤斩。
    onOpenNotification: (Map<String, dynamic> message) async {
      print("flutter onOpenNotification: $message");
    },
    // 接收自定義消息回調(diào)方法。
    onReceiveMessage: (Map<String, dynamic> message) async {
      print("flutter onReceiveMessage: $message");
    },
  );
} catch (e) {
  print('極光sdk配置異常');
}
}

姆坚、Android 需要在app->build.gradle->android{...->defaultConfig {.. 此處添加配置如下

manifestPlaceholders = [
      JPUSH_PKGNAME : applicationId,
      JPUSH_APPKEY : "xxxxxx", // NOTE: JPush 上注冊的包名對應(yīng)的 Appkey.
      JPUSH_CHANNEL : "thisPush", //暫時填寫默認(rèn)值即可
]

至此app在線調(diào)試OK

因為需求不會只要app在線狀態(tài)下收到推送澳泵,蘋果本就可以所以需要處理安卓如何接收離線推送接下來我們開始著手處理接收離線推送

首先去小米、vivo兼呵、魅族兔辅、oppo、華為击喂、等手機廠商的開發(fā)者中心去注冊創(chuàng)建項目维苔,注意創(chuàng)建項目時包名要與本地項目的包名相同
然后再極光平臺集成設(shè)置中填寫

然后去看看廠商集成文檔,沒做過安卓是不是一頭霧水懂昂,沒事兒耐心看完接下來我們把那些簡化一下總結(jié)后就是分為兩種

一介时、小米/vivo/魅族/oppo

manifestPlaceholders = [
      JPUSH_PKGNAME : applicationId,
      JPUSH_APPKEY : "xxxxxx", // NOTE: JPush 上注冊的包名對應(yīng)的 Appkey.
      JPUSH_CHANNEL : "thisPush", //暫時填寫默認(rèn)值即可.

      XIAOMI_APPID  : "MI-xxxxxxx",
      XIAOMI_APPKEY : "MI-xxxxxx",

      OPPO_APPKEY : "OP-xxxxxxxx", // OPPO平臺注冊的appkey
      OPPO_APPID : "OP-xxxxxx", // OPPO平臺注冊的appid
      OPPO_APPSECRET: "OP-xxxxxx",//OPPO平臺注冊的appsecret

      VIVO_APPKEY : "xxxxxxx", // VIVO平臺注冊的appkey
      VIVO_APPID : "xxxxxx", // VIVO平臺注冊的appid 

      MEIZU_APPKEY : "MZ-xxxxx", // 魅族平臺注冊的appkey
      MEIZU_APPID : "MZ-xxxxxx", // 魅族平臺注冊的appid
    ]     
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
compile 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'
compile 'cn.jiguang.sdk.plugin:xiaomi:3.9.0'//版本號和對應(yīng)的JPush版本號相同
compile 'cn.jiguang.sdk.plugin:oppo:3.9.0'//版本號和對應(yīng)的JPush版本號相同
compile 'cn.jiguang.sdk.plugin:vivo:3.9.0'//版本號和對應(yīng)的JPush版本號相同
compile 'cn.jiguang.sdk.plugin:meizu:3.9.0'//版本號和對應(yīng)的JPush版本號相同
}

二、華為(總是ge路子)
、創(chuàng)建完項目后將agconnect-services.json文件拖入android->app下沸柔,然后將本地簽名文件中的SHA256代碼填入華為后臺(填寫完一定要點擊右側(cè)的?)


image.png

循衰、不需要在代碼中填寫appkey,具體操作如下

//app->build.gradle
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.huawei.hms:push:5.1.1.301'
implementation 'cn.jiguang.sdk.plugin:huawei:3.9.0'
compile 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'
compile 'cn.jiguang.sdk.plugin:xiaomi:3.9.0'//版本號和對應(yīng)的JPush版本號相同
compile 'cn.jiguang.sdk.plugin:oppo:3.9.0'
compile 'cn.jiguang.sdk.plugin:vivo:3.9.0'
compile 'cn.jiguang.sdk.plugin:meizu:3.9.0'
}
apply plugin: 'com.huawei.agconnect' //此處用以調(diào)用agconnect動態(tài)狀態(tài)管理器
//android->build.gradle
buildscript {
ext.kotlin_version = '1.4.10'//'1.3.50'
repositories {
      google()
      jcenter()
    maven {url 'http://developer.huawei.com/repo/'}
}

dependencies {
    classpath 'com.android.tools.build:gradle'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath 'com.android.tools.build:gradle:3.3.2'
    classpath 'com.huawei.agconnect:agcp:1.2.1.301'
    
}
}

allprojects {
repositories {
      google()
      jcenter()
    maven {url 'http://developer.huawei.com/repo/'}
}
}
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"http:////添加此處代碼
package="xxxxxx">
<application
    tools:replace="android:label" ////添加此處代碼
    android:usesCleartextTraffic="true"
    ......

萬事都有意外狀況,如果你的項目中有集成環(huán)信通訊勉失,仔細的你會發(fā)現(xiàn)推送不好用了,調(diào)試時會發(fā)現(xiàn)獲取不到Devicetoken原探,不要慌乱凿,這是因為環(huán)信對iOS原生代理重寫了導(dǎo)致Devicetoken獲取被環(huán)信攔截了,解決辦法就是咽弦,先注冊環(huán)信登錄徒蟆,就好了,原理就是先讓環(huán)信去獲取Devicetoken目前作者也沒什么更好的辦法型型,有更的解決方式歡迎留言段审,謝謝點贊支持!D炙狻K峦鳌!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绷落,一起剝皮案震驚了整個濱河市姥闪,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌砌烁,老刑警劉巖筐喳,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異函喉,居然都是意外死亡避归,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門管呵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來梳毙,“玉大人,你說我怎么就攤上這事捐下《偬欤” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵蔑担,是天一觀的道長牌废。 經(jīng)常有香客問我,道長啤握,這世上最難降的妖魔是什么鸟缕? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上懂从,老公的妹妹穿的比我還像新娘授段。我一直安慰自己,他們只是感情好番甩,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布侵贵。 她就那樣靜靜地躺著,像睡著了一般缘薛。 火紅的嫁衣襯著肌膚如雪窍育。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天宴胧,我揣著相機與錄音漱抓,去河邊找鬼。 笑死恕齐,一個胖子當(dāng)著我的面吹牛乞娄,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播显歧,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼仪或,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了士骤?” 一聲冷哼從身側(cè)響起溶其,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎敦间,沒想到半個月后瓶逃,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡廓块,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年厢绝,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片带猴。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡昔汉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出拴清,到底是詐尸還是另有隱情靶病,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布口予,位于F島的核電站娄周,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏沪停。R本人自食惡果不足惜煤辨,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一裳涛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧众辨,春花似錦端三、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蛛株,卻和暖如春团赁,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背泳挥。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工然痊, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留至朗,地道東北人屉符。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像锹引,于是被迫代替她去往敵國和親矗钟。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容