Closed huaf22 closed 6 years ago
谢谢,pr,但是在某些场景下,ExtrasClassLoader 需要是DelegateClassloader 这是为了更好的隔离,而不是把序列化的对象全部放到公共的地方。
@hwjump 我在调试过程中发现如果 activity 跳转时带自定义类做参数的话,不管这两个 activity 是否在同一个 bundle 中,都会走到 DelegateClassLoader 的第340行在所有已经安装的 bundle 中查找,如果改成 ExtrasClassLoader 改为目标 Activity 所在的 BundleClassLoader,就会先查找目标 Activity 所在的 Bundle,如果找不到再去 Framework.systemClassLoader 中查找。
可以解释一下在什么场景下需要设置 ExtrasClassLoader 为 DelegateClassloader ?
当有人在主dex里设置了一个activitylifecycle。 然后在onCreate回调里,拿Intent。这个时候是需要的。
[core] 修复 ExtrasClassLoader 必须为 DelegateClassloader 的问题