使用自定义命名空间创建android资源库,如android. r



我正在做一个Android项目(使用Android Studio, Gradle),我把一些逻辑和小部件分成了子库项目。

我发现R.string.xxx或其他R引用被合并,但我无法获得我的库的资源值,如果它具有与应用程序模块相同的名称。(我使用[libpacakgename].R.string.appname,但资源仍然是应用程序模块的,而不是库的。)

是否有一种方法可以使用像Android资源一样的资源:android.R.string.xxx,或者像myapp:string/xxx这样的xml,其中"myapp"成为我的自定义命名空间或类名。

顺便说一下,我还发现有时attr id会发生冲突,导致编译失败。

这可以通过修改gradle内部任务来实现,但这不是预期的场景。

一个简单的解决方案是在库资源标识符前面加上(包-)名称。

相关内容

  • 没有找到相关文章

最新更新