【发布时间】:2012-05-03 22:31:54
【问题描述】:
我正在为一个项目制作几个 Android 库应用程序。为了简化问题,假设我在这个项目中有两个库(utilLib、screenLib)(现在将称为app)。
每个项目中都有同名但值不同的字符串资源。像这样:
utilLib
<string name="app_version">1.0</string>
<string name="hello">UtilLib Hello</string>
screenLib
<string name="app_version">0.7a</string>
<string name="hello">ScreenLib Hello</string>
应用
<string name="app_version">0.1</string>
我意识到我可以使用 com.package.R 来引用字符串,但是如果我的代码看起来像这样会怎样?
<!-- language: java -->
import com.app.R;
...
private void checkValue(){
String version = getString(R.app_version);
Log.d(TAG, "version: " + version); // 0.1 show be here
String hello = getString(R.hello);
Log.d(TAG, "Hello: " + hello); // <---- ? ('UtilLib Hello' or 'ScreenLib Hello')
}
我正在尝试在此处进行模块化构建,但不完全了解 Android 如何优先使用其 R.java。有没有人遇到过这种情况?
【问题讨论】:
标签: android modularity android-library r.java-file