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包路徑  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層,修改后要在源碼中編譯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM