reactNative 極光推送踩過的坑

這個安卓的極光推送搞了一個月,當(dāng)然,中間有很多事情要忙,所以拖了一個月的時間.

此處我用的是jpush-react-native奖慌,這個是極光官網(wǎng)維護的补憾,還有一個是react-antive-jpush甜刻,這是中文網(wǎng)的泊藕,官網(wǎng)的已經(jīng)停止維護,大家要使用極光維護的插件.

我這里只介紹一下安卓吧,iOS的可以自行百度,沒任何問題,我iOS至少配置了10幾次,重來沒出過錯.

一已骇、手動配置

1.1闭翩、進入你的項目目錄误债,然后打開命令終端輸入:

npm install jpush-react-native --save

rnpm link jpush-react-native(這個貌似只對iOS有作用)

Android

使用 Android Studio import 你的 React Native 應(yīng)用(選擇你的 React Native 應(yīng)用所在目錄下的 android 文件夾即可)

二浸船、修改 android 項目下的 settings.gradle 配置:

settings.gradle

include ':app', ':jpush-react-native
project(':jpush-react-native').projectDir = new File(rootProject.projectDir, ../node_modules/jpush-react-native/android')

修改 app 下的 AndroidManifest 配置妄迁,將 jpush 相關(guān)的配置復(fù)制到這個文件中,參考 demo 的 AndroidManifest:(增加了 <meta-data> 部分)

your react native project/android/app/AndroidManifest.xml

<application
        android:name=".MainApplication"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />

        <!-- Required . Enable it you can get statistics data with channel -->
        <meta-data android:name="JPUSH_CHANNEL" android:value="${APP_CHANNEL}"/>
        <meta-data android:name="JPUSH_APPKEY" android:value="${JPUSH_APPKEY}"/>

    </application>

修改 app 下的 build.gradle 配置:
your react native project/android/app/build.gradle

android {
    defaultConfig {
        applicationId "yourApplicationId"
        ...
        manifestPlaceholders = [
                JPUSH_APPKEY: "yourAppKey", //在此替換你的APPKey
                APP_CHANNEL: "developer-default"    //應(yīng)用渠道號
        ]
    }
}
...
dependencies {
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile project(':jpush-react-native')
    compile "com.facebook.react:react-native:+"  // From node_modules
}

將此處的 yourApplicationId 替換為你的項目的包名李命;yourAppKey 替換成你在官網(wǎng)上申請的應(yīng)用的 AppKey登淘。到此為止,配置完成封字。

現(xiàn)在重新 sync 一下項目黔州,應(yīng)該能看到 jpush-react-native 作為一個 android Library 項目導(dǎo)進來了

Paste_Image.png

如果你還是不能集成的話加如下代碼MainApplication.js下加入如下代碼
android/src/main/com/你的項目名/MainApplication

Paste_Image.png

這里配置就結(jié)束了,對了 就這么簡單.

三、集成成功所需要的

RegistrationID  這個如果你沒獲取到的話,那么證明你沒有集成成功

怎么獲取看下面代碼

首先導(dǎo)入

import JPushModule from 'jpush-react-native';//極光推送

componentDidMount() {
        //---------------------------------android start---------------------------------


        JPushModule.addReceiveCustomMsgListener((message) => {
            this.setState({ pushMsg: message });
            alert(message)
        });
        JPushModule.addReceiveNotificationListener((message) => {
            console.log("receive notification: " + message);
            alert(JSON.stringify(message));
        });
        //獲取RegistrationID  
        JPushModule.getRegistrationID((id)=>{
            console.debug(JSON.stringify(id));
        })
}

不要以為這樣就完成了
你會發(fā)現(xiàn)開始還是無法獲取到
那么你就要加上如下代碼,
這段代碼要在RN啟動的時候加進去,別忘記導(dǎo)入包

JPushModule.initPush()

好了完成,如果你還是收不到消息再看下面
android/build.gradle

Paste_Image.png

版本如果是1.2.3的話 那么是不支持的,請更新到1.3.1以上.

關(guān)于這個版本的問題以后有時間再貼出來

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末阔籽,一起剝皮案震驚了整個濱河市流妻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌笆制,老刑警劉巖绅这,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異项贺,居然都是意外死亡君躺,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進店門开缎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來棕叫,“玉大人,你說我怎么就攤上這事奕删“称” “怎么了?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵完残,是天一觀的道長伏钠。 經(jīng)常有香客問我,道長谨设,這世上最難降的妖魔是什么熟掂? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮扎拣,結(jié)果婚禮上赴肚,老公的妹妹穿的比我還像新娘。我一直安慰自己二蓝,他們只是感情好誉券,可當(dāng)我...
    茶點故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著刊愚,像睡著了一般踊跟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鸥诽,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天商玫,我揣著相機與錄音箕憾,去河邊找鬼。 笑死拳昌,一個胖子當(dāng)著我的面吹牛厕九,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播地回,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼俊鱼!你這毒婦竟也來了刻像?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤并闲,失蹤者是張志新(化名)和其女友劉穎细睡,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體帝火,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡溜徙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了犀填。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蠢壹。...
    茶點故事閱讀 38,654評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖九巡,靈堂內(nèi)的尸體忽然破棺而出图贸,到底是詐尸還是另有隱情,我是刑警寧澤冕广,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布疏日,位于F島的核電站,受9級特大地震影響撒汉,放射性物質(zhì)發(fā)生泄漏沟优。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一睬辐、第九天 我趴在偏房一處隱蔽的房頂上張望挠阁。 院中可真熱鬧,春花似錦溉委、人聲如沸鹃唯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽坡慌。三九已至,卻和暖如春藻三,著一層夾襖步出監(jiān)牢的瞬間洪橘,已是汗流浹背跪者。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留熄求,地道東北人渣玲。 一個月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像弟晚,于是被迫代替她去往敵國和親忘衍。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,543評論 2 349

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