问题描述
我想将一个很大的AAR库(“ crypteriumsdk”)放入一个动态功能模块中,该模块可以按需安装。但是当我这样做时,它找不到其资源(主题):
资源样式/ CrypteriumTheme(又名 找不到com.crypter.cryptocyrrency:style / CrypteriumTheme。
我还在主清单(应用程序模块)的@H_502_7@tools:replace="android:theme"中添加了@H_502_7@application。
这是怎么了?
@H_502_7@include ':crypteriumsdk' include ':wallet' include ':app'
@H_502_7@dependencies { implementation filetree(dir: "libs",include: ["*.jar"]) implementation project(":app") implementation project(':crypteriumsdk') // added the library here }
解决方法
Manifest合并得太早了,无法在用户的设备上使用实际的主题实现。
您可以将其添加到基本模块的styles.xml中:
<style name="CrypteriumTheme" />
这允许在安装时找到样式资源ID,并在模块可用并启动后将其覆盖。
有关有效的实现,请参见this sample。