android android.R.string.和com.android.internal.R.string.的区别

  某个时间刚好有这个疑问,一开始我以为只有后者源码是在framework/base/core/res/res下的strings.xml,前面那个我还以为资源是在其他的系统源码目录中。

解答疑问前需要知道Android 系统资源相关的几个路径:

在 AOSP 的路径是:

./frameworks/base/core/res/

在手机flash的位置是:

/system/framework/framework-res.apk

在AS的 SDK 中的路径是:

./android-sdk/platforms/android-xx/data/res/

在 AOSP 系统资源编译时
在frameworks/base/core/res/res/values/public.xml配置的可以直接用android.R引用
在/frameworks/base/core/res/res/values/symbols.xml注册的字段只能以com.android.internal.R.引用

即android android.R.string.和com.android.internal.R.string.的区别就是公共和私有引用的区别

猜你喜欢

转载自blog.csdn.net/angelsmiling/article/details/110209504