jpush / jpush-phonegap-plugin

JPush's officially supported PhoneGap/Cordova plugin (Android & iOS). 极光推送官方支持的 PhoneGap/Cordova 插件(Android & iOS)。
https://docs.jiguang.cn
MIT License
925 stars 350 forks source link

getRegistrationID取不到值的问题,感觉init应该是没生效 #338

Closed haowenb closed 6 years ago

haowenb commented 6 years ago

插件版本:最新版 jcore-android-1.1.9.jar jpush-android-3.1.1.jar 平台:android $ cordova -v 7.0.1 $ cordova platform ls Installed platforms: android 6.2.3 Available platforms: blackberry10 ~3.8.0 (deprecated) browser ~4.1.0 webos ~3.7.0 windows ~5.0.0 $ ionic -v 1.7.14

期望效果:注册成功并获取到 Registration Id 正常接收推送 实际效果:获取 Registration Id按钮点击无反应,获取不到Registration Id,没有进入callback 重现步骤:1.app.js中调用 init方法 this.init = function() { document.addEventListener('jpush.receiveRegistrationId', function (event) { console.log("注册成功"+event.registrationId) }, false) // window.plugins.jPushPlugin.init(); window.JPush.init() if (platform == 'iOS') { window.plugins.jPushPlugin.setDebugModeFromIos(); window.plugins.jPushPlugin.setApplicationIconBadgeNumber(0); } else if (platform == 'Android') { window.plugins.jPushPlugin.setDebugMode(true); } }

2.点击登录按钮后调用getRegistrationID

背景:这个报名我原来绑定的是别的jpush应用,后来我从jpush平台上删掉了原来的项目,新建了一个test项目,并在项目上把插件卸载重装更换了新的appkey。然后就出现这个问题了。然后我把代码按照新文档的内容核对了一遍,并多次卸载重装插件,问题依旧存在。 包括 Android 或 iOS 的日志: 点击获取 Registration Id按钮无反应,日志没有报任何内容

希望打什么能指导一下,问题到底出在哪里?已经延期一天了

lordmos commented 6 years ago

遇到同样问题了

pedoc commented 6 years ago

+1

huangminlinux commented 6 years ago

注意:插件从 v3.4.0 开始支持 cordova-android 7.0.0,因 cordova-android 7.0.0 修改了 Android 项目结构,因此不兼容之前的版本,升级前请务必注意。

如果需要安装之前版本的插件,请先安装 v1.2.0 以下版本(建议安装 v1.1.12)的 cordova-plugin-jcore,再安装旧版本插件(比如 v3.3.2),否则运行会报错。

检查一下插件版本是否符合要求。

pedoc commented 6 years ago

更新一下,可能的情况如下: 1.最近遇到过一次未在极光后台配置app的package时,RegistrationID就始终获取不到。 2.【安卓】确保cordova plugin add 之后,安卓工程的src目录下有 image 3.确保libs或jniLibs下有极光的*.so文件(取决于gradle中的配置) 3.确保init是在ondeviceready中调用的