我正在开发一个Android项目(使用Android Studio,Gradle),我将一些逻辑和小部件分成子库项目。
我发现R.string.xxx
或其他R
引用已合并,但如果它与app模块的名称相同,则无法获取我的库的资源值。 (我使用了[libpacakgename].R.string.appname
,但资源仍然是应用模块,而不是图书馆。)
有没有办法使用像Android资源这样的资源:android.R.string.xxx
,或像myapp:string/xxx
这样的xml," myapp"成为我的自定义命名空间或类名。
顺便说一下,我还发现有时attr id
会发生冲突,导致编译失败。
答案 0 :(得分:1)
这可以通过修改内部gradle任务来实现,但这不是预期的方案。
一个简单的解决方案是将库资源标识符添加到例如: (包裹)名称。