framework之中添加资源文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:layout_width="match_parent" 
	android:layout_height="match_parent"
	android:orientation="horizontal"
	android:gravity="center">
	android:id="@+id/root">
	<!-- 关机滑块 -->
	 <FrameLayout
	    android:id="@+id/slide_layout"
		android:layout_marginTop="50dip"
		android:layout_marginLeft="30dip"
	 	android:layout_width="match_parent"
		android:layout_height="wrap_content">
		
	 <FrameLayout
	    android:id="@+id/gradientView_layout"
	 	android:layout_width="match_parent"
		android:layout_height="wrap_content">
		
	 	<com.android.server.policy.GradientPowerView    	
	        android:id="@+id/gradientView"
			android:layout_gravity="center"
			android:layout_width="match_parent"
			android:layout_height="75dip"
			android:layout_centerVertical="true"
			android:text="@string/slide_to_poweroff"
			android:textSize="16sp"
			android:textColor="#505050"
			android:SlideColor="#FFFFFF"
	         /> 
		</FrameLayout>

	</FrameLayout>

上面这段 xml中添加的元素

添加方法

1.添加整个xml的名字到public.xml里声明 ,id 根据最末一个值的id号增加 eg:

2.这个xml里的子layout布局需要添加到symbols.xml里声明 eg:

3.自定义的id需要到 public.xml中声明 eg:

4.string资源文件的添加 需要到./frameworks/base/core/res/res/values/trings.xml 根据国际化选择不同的value目录

5.图片资源的添加 需要将图片资源名字在public.xml里声明eg:

一.增加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编译

  1. \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编译

  1. \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编译

  1. \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编译

  1. \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编译

  1. \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编译

  1. \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层,修改后要在源码中编译。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值