android源码framework下添加新资源的方法
2016-07-22 09:53
477 查看
编译带有资源的jar包,需要更改frameworks层,方法如下:
一.增加png类型的图片资源
1.将appupdate模块所有用到的png格式图片拷贝到framework/base/core/res/res/drawable-mdpi里。但是要确保没有与原生的没有重名文件。
2.在framework/base/core/res/res/values/public.xml文件里增加对这些图片的声明。(例: ,此id要保证唯一,以drawable类型的最后一个id为基数增加)
3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
二.增加string资源
1.将appupdate模块定义的string.xml里面的所以string拷贝到framework/base/core/res/res/values/string.xml里。但是确保没有重名的。
2.在framework/base/core/res/res/values/public.xml文件里增加对这些string的声明。(例:此id要保证唯一,以string类型的最后一个id为基数增加)
3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
三.增加layout资源
1.将appupdate模块的layout文件里定义的5个xml文件拷贝到在framework/base/core/res/res/layout里。但是要确保没有重名文件被覆盖。
2.在framework/base/core/res/res/values/public.xml文件里增加对这些layout的声明。(例:此id要保证唯一,以layout类型的最后一个id为基数增加)
3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
说明:若layout中包含xml,直接把xml拷贝到framework相应目录下。
例如(1)button的selector。将appupdate模块的drawable/common_btn_selector.xml文件拷贝到framework/base/core/res/res/drawable里,确保没有重名文件。 (2)将appupdate模块的anim/loading.xml文件拷贝到framework/base/core/res/res/anim里,确保没有重名文件。
四.增加style资源
1.将appupdate模块的style文件里定义的所有style拷贝到framework/base/core/res/res/values/style.xml里。确保没有覆盖原生的style.
2.在framework/base/core/res/res/values/public.xml文件里增加对这些style的声明。 3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
五.增加color资源
1.将appupdate模块的style文件里定义的所有style拷贝到framework/base/core/res/res/values/color.xml里。确保没有覆盖原生的color.
2.在framework/base/core/res/res/values/public.xml文件里增加对这些color的声明。 3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
六.增加资源id
1.在framework/base/core/res/res/values/ids.xml里定义你jar中所用的id(R.id)*)。确保没有覆盖原生的.
2.在framework/base/core/res/res/values/public.xml文件里增加对这些id的声明。 3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
最后,eclipse源码中要修改以下:
1. 把R.*.*全部替换成Android.R.*.*例如R.layout.appupg_tip_dialog
要更换为android.R.layout.appupg_tip_dialog
2. 资源文件中对资源的调用需要添加android:如<textview p="" <="" 要改成
3. Import *.*.*.R删除。 linux下jar包路径 Honeycomb\out\target\common\obj\JAVA_LIBRARIES\hisenseAppUpgrade_sdk_intermediates
另,要想在eclipse环境下编译修改后的应用自升级jar。
1, 从编译的源码中拷贝framework.jar及framework-res.apk两个文件,解压缩后。从framework.jar中拷贝出android文件夹,从framework-res.apk拷贝出res文件夹,然后添加到android.jar包中。替换自升级工程的android.jar。然后把res文件夹下出现X的文件删除即可。 应用自升级修改方法 资源修改要通过frameworks层,修改后要在源码中编译。
一.增加png类型的图片资源
1.将appupdate模块所有用到的png格式图片拷贝到framework/base/core/res/res/drawable-mdpi里。但是要确保没有与原生的没有重名文件。
2.在framework/base/core/res/res/values/public.xml文件里增加对这些图片的声明。(例: ,此id要保证唯一,以drawable类型的最后一个id为基数增加)
3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
二.增加string资源
1.将appupdate模块定义的string.xml里面的所以string拷贝到framework/base/core/res/res/values/string.xml里。但是确保没有重名的。
2.在framework/base/core/res/res/values/public.xml文件里增加对这些string的声明。(例:此id要保证唯一,以string类型的最后一个id为基数增加)
3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
三.增加layout资源
1.将appupdate模块的layout文件里定义的5个xml文件拷贝到在framework/base/core/res/res/layout里。但是要确保没有重名文件被覆盖。
2.在framework/base/core/res/res/values/public.xml文件里增加对这些layout的声明。(例:此id要保证唯一,以layout类型的最后一个id为基数增加)
3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
说明:若layout中包含xml,直接把xml拷贝到framework相应目录下。
例如(1)button的selector。将appupdate模块的drawable/common_btn_selector.xml文件拷贝到framework/base/core/res/res/drawable里,确保没有重名文件。 (2)将appupdate模块的anim/loading.xml文件拷贝到framework/base/core/res/res/anim里,确保没有重名文件。
四.增加style资源
1.将appupdate模块的style文件里定义的所有style拷贝到framework/base/core/res/res/values/style.xml里。确保没有覆盖原生的style.
2.在framework/base/core/res/res/values/public.xml文件里增加对这些style的声明。 3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
五.增加color资源
1.将appupdate模块的style文件里定义的所有style拷贝到framework/base/core/res/res/values/color.xml里。确保没有覆盖原生的color.
2.在framework/base/core/res/res/values/public.xml文件里增加对这些color的声明。 3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
六.增加资源id
1.在framework/base/core/res/res/values/ids.xml里定义你jar中所用的id(R.id)*)。确保没有覆盖原生的.
2.在framework/base/core/res/res/values/public.xml文件里增加对这些id的声明。 3.framework/base/core/res/res/ 下mm编译
4. \Honeycomb下 make update-api
最后,eclipse源码中要修改以下:
1. 把R.*.*全部替换成Android.R.*.*例如R.layout.appupg_tip_dialog
要更换为android.R.layout.appupg_tip_dialog
2. 资源文件中对资源的调用需要添加android:如<textview p="" <="" 要改成
3. Import *.*.*.R删除。 linux下jar包路径 Honeycomb\out\target\common\obj\JAVA_LIBRARIES\hisenseAppUpgrade_sdk_intermediates
另,要想在eclipse环境下编译修改后的应用自升级jar。
1, 从编译的源码中拷贝framework.jar及framework-res.apk两个文件,解压缩后。从framework.jar中拷贝出android文件夹,从framework-res.apk拷贝出res文件夹,然后添加到android.jar包中。替换自升级工程的android.jar。然后把res文件夹下出现X的文件删除即可。 应用自升级修改方法 资源修改要通过frameworks层,修改后要在源码中编译。
相关文章推荐
- android图片加载之imageloader的简单使用
- Android Studio 引用jar及so文件
- android -广播是内部类注册注意事项
- android保存数据到xml以及pull解析模板
- 关于正确使用Android AsyncTask学习整理
- Android入门教程之Vibrator(振动器)
- Android开发之View与Layout XML文件之间的理解
- Android的面向组件思想
- Android APK文件安装过程小结
- 如何不让EditText自动弹出输入法
- Android ImageView设置边框
- Android--长按菜单--ContextMenu
- 深入理解 Android 中的 Matrix
- Android中实现静态的默认安装和卸载应用
- Andr 4000 oid 系统动画, 移动中不能点击问题!
- 获取Android代码测试覆盖率详解
- Android studio乱码O
- Android 6.0 AMS分析的第一条线:SystemServer中的AMS的调用轨迹
- Android开发中各分辨率图片的参考尺寸
- 分享磨砺营马剑威老师讲解-Android N的新特性