DroidPluginTeam / DroidPluginTeam/DroidPlugin

插件apk中无法使用极光推送

Open
#420 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
7k
Forks
2.5k
PR merge metrics
No merged PRs in 30d

Description

问题说明:
==================================
当apk作为普通的程序安装时,运行正常。
当apk作为插件apk加载到宿主apk中时,报异常RuntimeException:Unable to create application ……

实际报错在MyApplication的45行,是这么一行代码:
**JPushInterface.init(this); //极光推送的初始化**
是在极光推送的初始化过程中,有一个静态变量List未初始化导致的空指针异常。

初步猜测原因:DroidPlugin在加载插件apk的过程中忽略了一部分生命周期的工作,以至于极光推送的部分服务没有被正常开启,该“静态成员变量”未被初始化,所以导致了空指针异常。

希望能够解决一下哈~

附异常信息:
================================
Caused by: java.lang.RuntimeException: **Unable to create application com.xx.x.MyApplication:** java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
at android.app.LoadedApk.makeApplication(LoadedApk.java:576)
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.morgoo.droidplugin.reflect.MethodUtils.invokeMethod(MethodUtils.java:214) 
at com.morgoo.droidplugin.reflect.MethodUtils.invokeMethod(MethodUtils.java:246) 
at com.morgoo.droidplugin.core.PluginProcessManager.preMakeApplication(PluginProcessManager.java:272) 
at com.morgoo.droidplugin.core.PluginProcessManager.preLoadApk(PluginProcessManager.java:228) 
at com.morgoo.droidplugin.hook.handle.PluginCallback.handleLaunchActivity(PluginCallback.java:377) 
at com.morgoo.droidplugin.hook.handle.PluginCallback.handleMessage(PluginCallback.java:245) 
at android.os.Handler.dispatchMessage(Handler.java:98) 
at android.os.Looper.loop(Looper.java:135) 
at android.app.ActivityThread.main(ActivityThread.java:5280) 
at java.lang.reflect.Method.invoke(Native Method) 

==================================================================

Caused by: java.lang.NullPointerException: **Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference**
at cn.jiguang.f.a.a(Unknown Source)
at cn.jiguang.f.a.r(Unknown Source)
at cn.jiguang.c.a.a(Unknown Source)
at cn.jiguang.api.JCoreInterface.init(Unknown Source)
at cn.jpush.android.d.a(Unknown Source)
**at cn.jpush.android.api.JPushInterface.init(Unknown Source)
at com.xx.x.MyApplication.onCreate(MyApplication.java:45)**
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1012)
at com.morgoo.droidplugin.hook.handle.PluginInstrumentation.callApplicationOnCreate(PluginInstrumentation.java:280)
at android.app.LoadedApk.makeApplication(LoadedApk.java:573)
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.morgoo.droidplugin.reflect.MethodUtils.invokeMethod(MethodUtils.java:214) 
at com.morgoo.droidplugin.reflect.MethodUtils.invokeMethod(MethodUtils.java:246) 
at com.morgoo.droidplugin.core.PluginProcessManager.preMakeApplication(PluginProcessManager.java:272) 
at com.morgoo.droidplugin.core.PluginProcessManager.preLoadApk(PluginProcessManager.java:228) 
at com.morgoo.droidplugin.hook.handle.PluginCallback.handleLaunchActivity(PluginCallback.java:377) 
at com.morgoo.droidplugin.hook.handle.PluginCallback.handleMessage(PluginCallback.java:245) 
at android.os.Handler.dispatchMessage(Handler.java:98) 
at android.os.Looper.loop(Looper.java:135) 
at android.app.ActivityThread.main(ActivityThread.java:5280) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:963) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:758) 

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.