Android 往Framework中添加新資源的方法詳解
更新時間:2013年06月15日 15:12:25 作者:
本篇文章是對Android往Framework中添加新資源的方法進行了詳細的分析介紹,需要的朋友參考下
有時候我們想在標準的Framework中添加自己的新的資源怎么辦呢?
辦法就是我們來嘗試下。
通過Eclipse的聯系,我們可以聯想到是否就是簡單的把字符串放在res的各個文件夾里面。先來試試看,編譯,系統立即報錯。為什么呢?
它提示你利用make update-api這個命令來更新public.xml文件或者把這個聲明稱hide類型。這個肯定不是我們想要的。
所以方法有二:
方法1:正常添加完資源后,執(zhí)行make update-api函數。系統更新res/values/public.xml文件。
方法2:正常添加完資源后,手動更改/res/values/public.xml文件。打開public.xml文件。發(fā)現結構如下:
<resources>
<!-- We don't want to publish private symbols in Android.R as part of the
SDK. Instead, put them here. -->
<private-symbols package="com.android.internal" />
<!-- AndroidManifest.xml attributes. -->
<eat-comment />
<!-- ===============================================================
Resources for version 1 of the platform.
=============================================================== -->
<eat-comment />
<public type="string" name="cancel" id="0x01040000" />
<public type="string" name="copy" id="0x01040001" />
<public type="string" name="copyUrl" id="0x01040002" />
<public type="style" name="TextAppearance.Widget.TextView.SpinnerItem" id="0x01030052" />
<public type="style" name="TextAppearance.WindowTitle" id="0x01030053" />
<public type="attr" name="theme" id="0x01010000" />
<public type="attr" name="label" id="0x01010001" />
<public type="attr" name="icon" id="0x01010002" />
<public type="attr" name="name" id="0x01010003" />
<public type="attr" name="manageSpaceActivity" id="0x01010004" />
<public type="attr" name="allowClearUserData" id="0x01010005" />
<public type="attr" name="permission" id="0x01010006" />
<public type="attr" name="readPermission" id="0x01010007" />
<public type="attr" name="writePermission" id="0x01010008" />
<public type="attr" name="protectionLevel" id="0x01010009" />
<!-- ===============================================================
Resources added in version 7 of the platform (Eclair MR1).
=============================================================== -->
<eat-comment />
<public type="attr" name="author" id="0x010102b4" />
<public type="attr" name="autoStart" id="0x010102b5" />
</resources>
這樣,我們可以自己動手添加。
推薦方法1,也是最標準的做法。為啥?
1:避免id重復。
2:麻煩
3:習慣標準化做法。
辦法就是我們來嘗試下。
通過Eclipse的聯系,我們可以聯想到是否就是簡單的把字符串放在res的各個文件夾里面。先來試試看,編譯,系統立即報錯。為什么呢?
它提示你利用make update-api這個命令來更新public.xml文件或者把這個聲明稱hide類型。這個肯定不是我們想要的。
所以方法有二:
方法1:正常添加完資源后,執(zhí)行make update-api函數。系統更新res/values/public.xml文件。
方法2:正常添加完資源后,手動更改/res/values/public.xml文件。打開public.xml文件。發(fā)現結構如下:
復制代碼 代碼如下:
<resources>
<!-- We don't want to publish private symbols in Android.R as part of the
SDK. Instead, put them here. -->
<private-symbols package="com.android.internal" />
<!-- AndroidManifest.xml attributes. -->
<eat-comment />
<!-- ===============================================================
Resources for version 1 of the platform.
=============================================================== -->
<eat-comment />
<public type="string" name="cancel" id="0x01040000" />
<public type="string" name="copy" id="0x01040001" />
<public type="string" name="copyUrl" id="0x01040002" />
<public type="style" name="TextAppearance.Widget.TextView.SpinnerItem" id="0x01030052" />
<public type="style" name="TextAppearance.WindowTitle" id="0x01030053" />
<public type="attr" name="theme" id="0x01010000" />
<public type="attr" name="label" id="0x01010001" />
<public type="attr" name="icon" id="0x01010002" />
<public type="attr" name="name" id="0x01010003" />
<public type="attr" name="manageSpaceActivity" id="0x01010004" />
<public type="attr" name="allowClearUserData" id="0x01010005" />
<public type="attr" name="permission" id="0x01010006" />
<public type="attr" name="readPermission" id="0x01010007" />
<public type="attr" name="writePermission" id="0x01010008" />
<public type="attr" name="protectionLevel" id="0x01010009" />
<!-- ===============================================================
Resources added in version 7 of the platform (Eclair MR1).
=============================================================== -->
<eat-comment />
<public type="attr" name="author" id="0x010102b4" />
<public type="attr" name="autoStart" id="0x010102b5" />
</resources>
這樣,我們可以自己動手添加。
推薦方法1,也是最標準的做法。為啥?
1:避免id重復。
2:麻煩
3:習慣標準化做法。
相關文章
Android Jetpack系列之App Startup使用詳解
這篇文章主要為大家介紹了Android Jetpack系列之App Startup使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10Android開發(fā)之Fragment懶加載的幾種方式及性能對比
這篇文章主要介紹了Android開發(fā)之Fragment懶加載的幾種方式及性能對比的相關資料,具體詳細介紹需要的小伙伴可以參考下面文章內容2022-05-05Android使用Sensor感應器獲取用戶移動方向(指南針原理)
這篇文章主要介紹了Android使用Sensor感應器獲取用戶移動方向的方法,實例分析了指南針原理極其應用,需要的朋友可以參考下2015-12-12Android獲取手機型號/系統版本號/App版本號等信息實例講解
本示例獲得手機型號,系統版本,App版本號等信息,具體實現如下,感興趣的朋友可以參考下哈2013-06-06Android中SharedPreferences簡單使用實例
這篇文章主要介紹了Android中SharedPreferences簡單使用案例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10