jpush / jpush/jpush-phonegap-plugin
Android 5.0/6.0 报错:ClassNotFoundException:Didn't find class "cn.jpush.phonegap.MyPushGuard" on path
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 922
- Forks
- 350
- PR merge metrics
- No merged PRs in 30d
Description
WARNING: 如果不按照这个表格,我们将无法帮助你,并将忽略你的问题。
你的运行环境
- 插件版本: 3.0.3
- 平台(Android / iOS): Android
- Cordova version (
cordova -v): 6.5.0 - Cordova platform version (
cordova platform ls): android 6.2.3 - Ionic Version (if using Ionic):4.10.2
期望效果
Android5.0/6.0 不再报错 ClassNotFoundException
实际效果
Android5.0/6.0 不再报错 ClassNotFoundException
重现步骤
- 本项目集成了bugly进行bug手机,在Android 5.0 和 6.0 版本中必现 ClassNotFoundException 崩溃。
背景
你尝试做过些什么?
推送可以正常进行,Android 5.0 可以收到推送消息。
Debug logs
包括 Android 或 iOS 的日志:
java.lang.RuntimeException:Unable to instantiate receiver cn.jpush.phonegap.MyPushGuard: java.lang.ClassNotFoundException: Didn't find class "cn.jpush.phonegap.MyPushGuard" on path: DexPathList[[dex file "/data/data/com.sundray.iot/mix.dex", zip file "/data/app/com.sundray.iot-2/base.apk"],nativeLibraryDirectories=[/data/app/com.sundray.iot-2/lib/arm, /vendor/lib, /system/lib]]
android.app.ActivityThread.handleReceiver(ActivityThread.java:2772)
dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
java.lang.ClassLoader.loadClass(ClassLoader.java:511)
java.lang.ClassLoader.loadClass(ClassLoader.java:469)
android.app.ActivityThread.handleReceiver(ActivityThread.java:2767)
android.app.ActivityThread.access$1800(ActivityThread.java:162)
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1535)
android.os.Handler.dispatchMessage(Handler.java:102)
android.os.Looper.loop(Looper.java:135)
android.app.ActivityThread.main(ActivityThread.java:5521)
java.lang.reflect.Method.invoke(Native Method)
java.lang.reflect.Method.invoke(Method.java:372)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:962)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The report names no source file, test, or entry point. Start by reproducing the integration with plugin 3.0.3 on Android 5.0 and 6.0 using the listed Cordova and Ionic versions, then trace the MyPushGuard ClassNotFoundException in the provided log. Done means the crash no longer occurs on those Android versions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java, javascript
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100