Android源码 在framework中加入一张图片资源,获取不到资源文件
Posted 王睿丶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android源码 在framework中加入一张图片资源,获取不到资源文件相关的知识,希望对你有一定的参考价值。
在项目开发时发需要在framework/base/services中引用一张图片,但是系统中并没有定义该图片,因此考虑向资源文件夹framework/base/core/res中加入一张图片资源,步骤如下:
1.将图片资源stat_notify_alarm.png拷贝到framework/base/core/res/res/drawable-hdpi下(因为本项目引用的就是hdpi下的资源)
2.修改framework/base/core/res/res/values/symbols.xml文件,声明该图片资源。symbols.xml里面声明的是系统内部资源,只提供给系统内部使用,外部app是无法访问的,如果是在public.xml中声明,则表示的是公共的资源,外部app也可以访问。
3.编译framework/base/core/res模块,会生成framework-res.apk。此时查看目录/out/target/common/R/com/android/internal/R.java文件,此时会看到该图片资源对应的id生成。
4.在framework/base/services中引用相应的图片资源,引用方式为:com.android.internal.R.drawable.stat_notify_alarm(若是公共的资源,则还可以使用android.R.drawable.xxx的方式)然后编译时生成service.jar包,不过可能会发现仍然找不到该图片资源,此时需要在framework/base下执行mmm .生成framework.jar,若还是找不到资源,则需要进入源码根目录下执行make update-api,更新一下api,然后再编译services,发现编译成功生成了services.jar。
5.将生成的framework-res.apk和services.jar分别push到设备中并重启设备即可看到效果。
6.在上传代码至远程仓库时,除了上传修改的代码意外,还要查看framework/base/api下有无更新,若有current.txt和system-current.txt改变,则需要一并上传。
symbol.xml修改为:
引用方式为:
以上是关于Android源码 在framework中加入一张图片资源,获取不到资源文件的主要内容,如果未能解决你的问题,请参考以下文章
我想在MFC中加入一图片区,显示在列表框中选择的DWG图片,请各位朋友帮忙!!!
请问用触发器:在负责人中加入一条记录,对应的部门ID里的成员数量加一