Closed taishuhongye closed 5 years ago
bug定位到了本库的代码
应该是跨进程通信反序列化的时候出错了,具体原因我再看下
看了一下log,感觉应该是本来用于在intent中存放string类型的字段,被放入了bean,注意到你使用的不是最新的版本,可以使用最新1.5.3版本试下
看了一下log,感觉应该是本来用于在intent中存放string类型的字段,被放入了bean,注意到你使用的不是最新的版本,可以使用最新1.5.3版本试下
哦十分感谢。
应该是跨进程通信反序列化的时候出错了,具体原因我再看下
@JeremyLiao 请看我的issue 81,推测错误原因如下
斗鱼使用了LiveDataBus发送了一个跨进程的序列化事件,而我们的app支持了跨进程通信然后捕获这个事件的时候无法解析这个斗鱼的bean类造成的崩溃。
如果我们是单进程的app的话那么直接注销掉supportBroadcast即可,如果我们支持多进程通信的话,如何控制和其他进程通信呢?
您好,看到友盟上收集的一些bug,我个人对此不是很领悟,定位到了本库的代码。错误如下,您看看。
java.lang.RuntimeException: Error receiving broadcast Intent { act=intent.action.ACTION_LEB_IPC flg=0x10 (has extras) } in com.jeremyliao.liveeventbus.ipc.receiver.LebIpcReceiver@d255fd at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1407) at android.app.-$$Lambda$LoadedApk$ReceiverDispatcher$Args$_BumDX2UKsnxLVrE6UJsJZkotuA.run(Unknown Source:2) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:201) at android.app.ActivityThread.main(ActivityThread.java:6806) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873) Caused by: java.lang.RuntimeException: Parcelable encountered ClassNotFoundException reading a Serializable object (name = com.douyu.yuba.bean.BasePostNews) at android.os.Parcel.readSerializable(Parcel.java:2941) at android.os.Parcel.readValue(Parcel.java:2722) at android.os.Parcel.readArrayMapInternal(Parcel.java:3045) at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288) at android.os.BaseBundle.unparcel(BaseBundle.java:232) at android.os.BaseBundle.getString(BaseBundle.java:1164) at android.content.Intent.getStringExtra(Intent.java:7464) at com.jeremyliao.liveeventbus.ipc.receiver.LebIpcReceiver.onReceive(LebIpcReceiver.java:23) at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1397) ... 8 more Caused by: java.lang.ClassNotFoundException: com.douyu.yuba.bean.BasePostNews at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at android.os.Parcel$2.resolveClass(Parcel.java:2927) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1615) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1520) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1776) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373) at android.os.Parcel.readSerializable(Parcel.java:2935) ... 16 more Caused by: java.lang.ClassNotFoundException: Didn't find class "com.douyu.yuba.bean.BasePostNews" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk"],nativeLibraryDirectories=[/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/lib/arm, /data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk!/lib/armeabi, /system/lib, /vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:171) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 25 more java.lang.RuntimeException: Parcelable encountered ClassNotFoundException reading a Serializable object (name = com.douyu.yuba.bean.BasePostNews) at android.os.Parcel.readSerializable(Parcel.java:2941) at android.os.Parcel.readValue(Parcel.java:2722) at android.os.Parcel.readArrayMapInternal(Parcel.java:3045) at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288) at android.os.BaseBundle.unparcel(BaseBundle.java:232) at android.os.BaseBundle.getString(BaseBundle.java:1164) at android.content.Intent.getStringExtra(Intent.java:7464) at com.jeremyliao.liveeventbus.ipc.receiver.LebIpcReceiver.onReceive(LebIpcReceiver.java:23) at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1397) at android.app.-$$Lambda$LoadedApk$ReceiverDispatcher$Args$_BumDX2UKsnxLVrE6UJsJZkotuA.run(Unknown Source:2) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:201) at android.app.ActivityThread.main(ActivityThread.java:6806) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873) Caused by: java.lang.ClassNotFoundException: com.douyu.yuba.bean.BasePostNews at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at android.os.Parcel$2.resolveClass(Parcel.java:2927) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1615) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1520) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1776) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373) at android.os.Parcel.readSerializable(Parcel.java:2935) ... 16 more Caused by: java.lang.ClassNotFoundException: Didn't find class "com.douyu.yuba.bean.BasePostNews" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk"],nativeLibraryDirectories=[/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/lib/arm, /data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk!/lib/armeabi, /system/lib, /vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:171) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 25 more java.lang.ClassNotFoundException: com.douyu.yuba.bean.BasePostNews at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at android.os.Parcel$2.resolveClass(Parcel.java:2927) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1615) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1520) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1776) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373) at android.os.Parcel.readSerializable(Parcel.java:2935) at android.os.Parcel.readValue(Parcel.java:2722) at android.os.Parcel.readArrayMapInternal(Parcel.java:3045) at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288) at android.os.BaseBundle.unparcel(BaseBundle.java:232) at android.os.BaseBundle.getString(BaseBundle.java:1164) at android.content.Intent.getStringExtra(Intent.java:7464) at com.jeremyliao.liveeventbus.ipc.receiver.LebIpcReceiver.onReceive(LebIpcReceiver.java:23) at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1397) at android.app.-$$Lambda$LoadedApk$ReceiverDispatcher$Args$_BumDX2UKsnxLVrE6UJsJZkotuA.run(Unknown Source:2) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:201) at android.app.ActivityThread.main(ActivityThread.java:6806) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.douyu.yuba.bean.BasePostNews" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk"],nativeLibraryDirectories=[/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/lib/arm, /data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk!/lib/armeabi, /system/lib, /vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:171) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 25 more java.lang.ClassNotFoundException: Didn't find class "com.douyu.yuba.bean.BasePostNews" on path: DexPathList[[zip file "/system/framework/android.test.mock.jar", zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk"],nativeLibraryDirectories=[/data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/lib/arm, /data/app/com.octinn.birthdayplus-DPL2G8XtXYl4Pwq0a4HLUw==/base.apk!/lib/armeabi, /system/lib, /vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:171) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at android.os.Parcel$2.resolveClass(Parcel.java:2927) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1615) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1520) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1776) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373) at android.os.Parcel.readSerializable(Parcel.java:2935) at android.os.Parcel.readValue(Parcel.java:2722) at android.os.Parcel.readArrayMapInternal(Parcel.java:3045) at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288) at android.os.BaseBundle.unparcel(BaseBundle.java:232) at android.os.BaseBundle.getString(BaseBundle.java:1164) at android.content.Intent.getStringExtra(Intent.java:7464) at com.jeremyliao.liveeventbus.ipc.receiver.LebIpcReceiver.onReceive(LebIpcReceiver.java:23) at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1397) at android.app.-$$Lambda$LoadedApk$ReceiverDispatcher$Args$_BumDX2UKsnxLVrE6UJsJZkotuA.run(Unknown Source:2) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:201) at android.app.ActivityThread.main(ActivityThread.java:6806) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)