關於整合極光推送的坑
阿新 • • 發佈:2019-01-11
1、根據文件使用自動整合,
需要在AndroidManifest.xml中加入下列程式碼(加粗部分)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.tests.flavorlib.app"
xmlns:tools="http://schemas.android.com/tools">
<application
android:icon="@drawable/icon"
android:name="com.example.jpushdemo.ExampleApplication"
android:label="@string/app_name" >
<service android:name="cn.jpush.android.service.PushService"
android:process=":multiprocess"
tools:node="replace" >
……
</service>
……
</application>
……
</manifest>
確認android studio的 Project 根目錄的主 gradle 中配置了jcenter支援。(新建project預設配置就支援)
buildscript {
repositories {
jcenter()
}
......
}
allprojets {
repositories {
jcenter()
}
}
在 module 的 gradle 中新增依賴和AndroidManifest的替換變數加入下列程式碼(加粗部分) 。
android {
......
defaultConfig {
applicationId "com.xxx.xxx" //JPush上註冊的包名.
......
ndk {
//選擇要新增的對應cpu型別的.so庫。
abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a'
// 還可以新增 'x86', 'x86_64', 'mips', 'mips64'
}
manifestPlaceholders = [
JPUSH_PKGNAME : applicationId,
JPUSH_APPKEY : "你的appkey", //JPush上註冊的包名對應的appkey.
JPUSH_CHANNEL : "developer-default", //暫時填寫預設值即可.
]
......
}
......
}
dependencies {
......
compile 'cn.jiguang.sdk:jpush:3.1.1' // 此處以JPush 3.1.1 版本為例。
compile 'cn.jiguang.sdk:jcore:1.1.9' // 此處以JCore 1.1.9 版本為例。
......
}
當出現下列錯誤不要慌
我的包命和對應的appKey都是正確的,但還是提示
[JPushGlobal] Invalid appKey :xxxxx , Please get your Appkey from JPush web console!
這裡key對應的報名都沒有問題
這種情況一般就是你在gradle種的appkey有問題,一定要注意有沒有加空格,有空格的話,刪除。