1. 程式人生 > >reactive-native極光推送不成功問題總結(android)

reactive-native極光推送不成功問題總結(android)

目前時間:2017/9/21

"react": "16.0.0-alpha.12",
"react-native": "0.47.2",
"jcore-react-native": "^1.1.8-beta2",
"jpush-react-native": "^2.0.9",

依照https://github.com/jpush/jpush-react-native/tree/master/example上面配置,依舊推送不成功,最後發現問題出在兩個地方:
1.在專案的AndroidManifest.xml裡面加上下面程式碼,注意下protectionLevel,這裡是許可權保護設定,我在測試時設定為了normal

<!--新增通知許可權,${ApplicationID}替換成你的applicationID!-->
    <premission 
        android:name="${ApplicationID}.permission.JPUSH_MESSAGE"
        android:protectionLevel="signature"/>

2.開啟node_modules/jpush_react-native/android/src/AndroidManifest.xml,將所有的${applicationId}替換成你的包名。

注意:
npm run configureJPush <yourAppKey> <yourModuleName>

這個命令不建議使用,還是自己手動去配置比較好,因為執行有可能失敗,每次執行他會將原來在專案中的配置繼續新增,導致打包失敗
另外,rnpm link jpush-react-native這個命令其實就是把該包裡面的原生專案程式碼匯入你當前專案中,由於我是使用的react-native link(會把所有模組的都匯入,不建議使用,否則你得刪好多重複的),我估計還需要加上rnpm link jcore-react-native