1

我有我的基本模块(Base),一个动态功能模块(A)和一个不是动态功能的通用模块(Common),它是一个库。当我将 Common 添加为 A 的依赖项时,我可以使用其中的类,但我的构建失败,因为它无法从 Common 库中找到资源(错误:找不到符号 R.drawable.myimage)。

dependencies {
     implementation project(":Common")
     implementation project(':Base')
}

这是动态特征约束还是造成这种情况的原因?

4

3 回答 3

2

结果R.id.resource只会从功能模块中获取资源,com.yourdomain.base.R.id.resource将引用可以访问库模块资源的基本模块的资源。

这解决了我的问题。

于 2019-10-16T18:36:23.690 回答
0

在动态功能活动中安装 SplitCompat

override fun onAttach(context: Context?) {
super.onAttach(context)
SplitCompat.install(context)
}

可以参考官方动态交付文档

https://github.com/arpitagarwal1301/AndroidHub/issues/8

于 2019-10-16T18:44:06.350 回答
0

使用导入您的库模块(Common)

文件 --> 新建 --> 导入模块

你可以随时尝试

使缓存无效并重新启动

(尴尬地解决了 Android Studio 的大多数问题)

于 2019-10-16T18:13:45.663 回答