Router-RePlugin
Router-RePlugin copied to clipboard
host與plugin(v0.8 and v0.9)使用Router(v2.6x, v2.7x and v2.8x)版本相容性測試
- host(v2.6x) and plugin(v2.6x) is success
- host(v2.7x) and plugin(v2.7x) is fail, then app will be suspended
- host(v2.7x) and plugin(v2.6x) is fail, then java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lzh.replugindemo/com.lzh.replugindemo.loader.a.ActivityN1NRTS0}: java.lang.RuntimeException: Parcel android.os.Parcel@254dd5ef: Unmarshalling unknown type code 6881391 at offset 188 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2626) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2706) at android.app.ActivityThread.access$800(ActivityThread.java:178) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1544) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:6102) 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:1028) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823) Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@254dd5ef: Unmarshalling unknown type code 6881391 at offset 188 at android.os.Parcel.readValue(Parcel.java:2237) at android.os.Parcel.readArrayMapInternal(Parcel.java:2494) at android.os.BaseBundle.unparcel(BaseBundle.java:221) at android.os.Bundle.getParcelable(Bundle.java:755) at android.content.Intent.getParcelableExtra(Intent.java:5286) at com.lzh.router.replugin.core.RouterBridgeActivity.onCreate(RouterBridgeActivity.java:28) at android.app.Activity.performCreate(Activity.java:6115) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1130) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2573) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2706) at android.app.ActivityThread.access$800(ActivityThread.java:178) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1544) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:6102) 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:1028) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)#
请先暂时继续使用2.6x版本。这问题是因为2.7版本修改了数据序列化逻辑导致的,我会尽快更新新版本提供出来。
@kslin1973 新版本0.9.0已发布。修正了这个问题。你可以试试。新版本需要插件和宿主均使用Router的2.7.2以上版本。
@yjfnypeu 我再測試看看, 有問題再回報, 謝謝你的支持~
- host(0.90+2.72) and plugin(0.90+2.72) is success
2.1 host(0.90+2.72) and plugin(0.80+2.61) is no response in first activity call
2.2 host(0.90+2.72) and plugin(0.80+2.61) is fail in action call, then app will be occurred an error,
05-22 03:09:24.631 22077-22077/com.lzh.replugindemo E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.lzh.replugindemo, PID: 22077
java.lang.RuntimeException: Error receiving broadcast Intent { act=com.RePlugin.Router.Plugin.plugina flg=0x10 (has extras) } in com.lzh.router.replugin.core.RouterBridgeReceiver@3ba7018d
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:981)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:6102)
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:1028)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.net.Uri.getScheme()' on a null object reference
at com.lzh.nonview.router.tools.Utils.completeUri(Utils.java:67)
at com.lzh.nonview.router.Router.
- host(0.80+2.61) and plugin(0.90+2.72) is fail, then app will be occurred an error, 05-22 03:16:49.266 22640-22640/com.lzh.replugindemo E/AndroidRuntime: FATAL EXCEPTION: main Process: com.lzh.replugindemo, PID: 22640 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lzh.replugindemo/com.lzh.replugindemo.loader.a.ActivityN1NRTS0}: java.lang.RuntimeException: Parcel android.os.Parcel@1384ac2d: Unmarshalling unknown type code 7274605 at offset 240 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2626) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2706) at android.app.ActivityThread.access$800(ActivityThread.java:178) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1544) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:6102) 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:1028) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823) Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@1384ac2d: Unmarshalling unknown type code 7274605 at offset 240 at android.os.Parcel.readValue(Parcel.java:2237) at android.os.Parcel.readArrayMapInternal(Parcel.java:2494) at android.os.BaseBundle.unparcel(BaseBundle.java:221) at android.os.BaseBundle.containsKey(BaseBundle.java:269) at android.content.Intent.hasExtra(Intent.java:5077) at com.lzh.router.replugin.core.RouterBridgeActivity.onCreate(RouterBridgeActivity.java:23) at android.app.Activity.performCreate(Activity.java:6115) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1130) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2573) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2706) at android.app.ActivityThread.access$800(ActivityThread.java:178) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1544) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:6102) 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:1028) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
@kslin1973 测得很全面,所以目前来说使用时会需要统一Router与Router-RePlugin版本进行使用。暂时没办法对此次的低版本进行兼容。
以上測試給Router-RePlugin的使用者做一個參考, 在此感謝yjfnypeu大大對於Android App開發的支持!
host(0.90+2.81) and plugin(0.90+2.72) is fail (plugin name is null) in remote plugin's uninstalll action call