Shadow
Shadow copied to clipboard
零反射全动态Android插件框架
在插件进程中启动Provider,这个Provider在另外一个进程,出现以下报错问题: java.lang.IllegalArgumentException: hostContentProviderDelegate is null ,请检查ContentProviderDelegateProviderHolder.setDelegateProviderHolderPrepareListener是否调用,或PluginContainerContentProvider 是否和插件在同一进程。 报错的代码: ``` private void checkHostContentProviderDelegate() { if (hostContentProviderDelegate == null) { throw new IllegalArgumentException("hostContentProviderDelegate is null ,请检查ContentProviderDelegateProviderHolder.setDelegateProviderHolderPrepareListener是否调用,或" + this.getClass().getSimpleName() + " 是否和插件在同一进程"); }...
在 `ShadowApplication#onCreate()` 中创建了两个 `BroadcastReceiver` 实例 ```java String receiverClassname = entry.getKey(); Class clazz = mPluginClassLoader.loadClass(receiverClassname); BroadcastReceiver receiver = ((BroadcastReceiver) clazz.newInstance()); //这个返回值没使用 mAppComponentFactory.instantiateReceiver(mPluginClassLoader, receiverClassname, null); ```
我理解,可能是CodeGenerator那部分生成java部分需要用到android.jar,其他的module为啥也要用java-library?还请大佬帮忙解释下。十分感谢
大佬你好,想向你请教一个源码的问题,就是CreateResourceBloc里我看你有写“如果把宿主的apk路径放到sharedLibraryFiles中,我们假设宿主资源id分区是0x7f,则加载后会变为一个随机的分区,如0x30。因此放入sharedLibraryFiles中的apk的资源id分区都需要改为0x80或更大的值” 这段话没太明白,是指只有宿主的apk路径放到sharedLibraryFiles会随机分区?还是宿主和插件放进去都会随机分区?如果是都会随机分区,那岂不是给插件设置的0x7e也就失效了??????这个不是很清楚,能帮忙解释下吗 谢谢!
在shadow插件中使用Eventbus。代码如下: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ... EventBus.getDefault().register(this); } 启动后会报如下错误: Process: com.tencent.shadow.sample.host:plugin, PID: 29900 java.lang.NoClassDefFoundError: android.app.PictureInPictureParams at libcore.reflect.InternalNames.getClass(InternalNames.java:55) at java.lang.Class.getDexCacheType(Class.java:2551) at java.lang.reflect.AbstractMethod.getParameterTypes(AbstractMethod.java:169) at java.lang.reflect.Method.getParameterTypes(Method.java:193) at java.lang.reflect.Method$1.compare(Method.java:72) at...
## sampleDemo改动 修改 sample-plugin / sample-base-lib 目录下的BaseActivity, 之前继承的是Activity, 修改成 AppCompatActivity 启动sample-host 运行后,点击和BaseActivity相关的页面出现闪退。 例如点击Dialog测试用例, 插件和宿主通信相关测试用例   请问这个问题怎么解
我插件A里面用了一个sdk,sdk里面有个layout文件。 现在插件B对插件A进行depandsOn,然后插件B就使用不到插件A的资源了