Router-RePlugin icon indicating copy to clipboard operation
Router-RePlugin copied to clipboard

host與plugin(v0.8 and v0.9)使用Router(v2.6x, v2.7x and v2.8x)版本相容性測試

Open kslin1973 opened this issue 6 years ago • 7 comments

  1. host(v2.6x) and plugin(v2.6x) is success
  2. host(v2.7x) and plugin(v2.7x) is fail, then app will be suspended
  3. 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)#

kslin1973 avatar May 17 '18 04:05 kslin1973

请先暂时继续使用2.6x版本。这问题是因为2.7版本修改了数据序列化逻辑导致的,我会尽快更新新版本提供出来。

yjfnypeu avatar May 17 '18 05:05 yjfnypeu

@kslin1973 新版本0.9.0已发布。修正了这个问题。你可以试试。新版本需要插件和宿主均使用Router的2.7.2以上版本。

yjfnypeu avatar May 21 '18 08:05 yjfnypeu

@yjfnypeu 我再測試看看, 有問題再回報, 謝謝你的支持~

kslin1973 avatar May 21 '18 08:05 kslin1973

  1. 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.(Router.java:61) at com.lzh.nonview.router.Router.create(Router.java:80) at com.lzh.nonview.router.Router.resume(Router.java:126) at com.lzh.router.replugin.core.RouterBridgeReceiver.onReceive(RouterBridgeReceiver.java:20) at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:962) 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) 

  1. 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 avatar May 22 '18 01:05 kslin1973

@kslin1973 测得很全面,所以目前来说使用时会需要统一Router与Router-RePlugin版本进行使用。暂时没办法对此次的低版本进行兼容。

yjfnypeu avatar May 22 '18 01:05 yjfnypeu

以上測試給Router-RePlugin的使用者做一個參考, 在此感謝yjfnypeu大大對於Android App開發的支持!

kslin1973 avatar May 22 '18 01:05 kslin1973

host(0.90+2.81) and plugin(0.90+2.72) is fail (plugin name is null) in remote plugin's uninstalll action call

kslin1973 avatar Jun 02 '18 01:06 kslin1973