[注]下面描述的内容适用于Android 4.1以及之后的版本,试验的模块为frameworks/opt/telephony/src/java/android/telephony
维护WebView期间一直就只有关注code的逻辑,以及进行一些java逻辑的修改,还真没有在framework中添加过资源,
第一次在framework中添加资源,直觉以为在frameworks/base/core/res中添加编译即可使用,结果还是出现类似如下错误:
frameworks/opt/telephony/src/java/android/telephony/SmsMessage.java:369: error: cannot find symbol
if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding1)) {
^
symbol: variable config_sms_force_7bit_encoding1
location: class bool
果断到Lollipop/out/target/common/R/com/android/internal/R.java查找是否有该资源ID生成,结果没有。
通过必应哥搜索前辈经验,以及根据自己的理解,总结在framework中添加资源需要如下几步才行:
1.将资源添加到Lollipop/frameworks/base/core/res/res/values/s

本文详细介绍了在Android 4.1及以上版本的Framework中添加资源的方法,包括将资源添加到values/strings.xml,处理private和public资源,更新Android.mk文件以使模块能访问到新资源,并解释了如何通过make update-api更新资源ID。同时提到了如果要添加新的XXX-res.apk,可能需要进一步的研究。
最低0.47元/天 解锁文章
2353

被折叠的 条评论
为什么被折叠?



