zoukankan      html  css  js  c++  java
  • android源码framework下添加新资源的方法

    编译带有资源的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包路径  Honeycombout argetcommonobjJAVA_LIBRARIEShisenseAppUpgrade_sdk_intermediates  

    另,要想在eclipse环境下编译修改后的应用自升级jar。  

    1, 从编译的源码中拷贝framework.jar及framework-res.apk两个文件,解压缩后。从framework.jar中拷贝出android文件夹,从framework-res.apk拷贝出res文件夹,然后添加到android.jar包中。替换自升级工程的android.jar。然后把res文件夹下出现X的文件删除即可。  应用自升级修改方法  资源修改要通过frameworks层,修改后要在源码中编译。

  • 相关阅读:
    Access, SQL Server, and Oracle数据类型的对应关系
    [转]SQL Server 2005 从差异备份还原数据库
    疲惫
    关于在cmd命令里的路径包含空格的问题
    导Excel时的科学计数法问题
    [转]SQL SERVER 2005 备份与恢复简介
    [转]用C#创建Windows Service
    [转] vb.net option
    [转]sql server profiler only TrueType fonts are supported. this is not a truetype font
    进程、线程、协程之概念理解[转帖]
  • 原文地址:https://www.cnblogs.com/zl1991/p/5241891.html
Copyright © 2011-2022 走看看