在Android系統(tǒng)源碼中預(yù)置APK的方法
如何將無源碼的google play APK預(yù)置進(jìn)系統(tǒng)(有源碼和無源碼有一點(diǎn)區(qū)別,網(wǎng)上下載的google play.apk解壓之后里面沒有源碼)?
(注意下文中的Test就是我們要預(yù)置到源碼中的googleplay.apk的名字!!網(wǎng)上下載的Google Play Store 4.6.17.apk,名字中含有空格,將空格去掉或者自直接將它重新命名)
1.在 packages/apps 下面以需要預(yù)置的 APK 名字創(chuàng)建文件夾,以預(yù)制一個(gè)名為Test的APK為例
2.將 Test.apk 放到 packages/apps/Test 下面
3.在 packages/apps/Test 下面創(chuàng)建文件 Android.mk,文件內(nèi)容如下 :
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) # Module name should match apk name to be installed LOCAL_MODULE := Test LOCAL_MODULE_TAGS := optional LOCAL_SRC_FILES := $(LOCAL_MODULE).apk LOCAL_MODULE_CLASS := APPS LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX) LOCAL_CERTIFICATE := PRESIGNED include $(BUILD_PREBUILT)
4.打開文件 build/target/product/${Project}.mk (其中 ${Project} 表示工程名)
將 Test 添加到 PRODUCT_PACKAGES 里面。
PRODUCT_PACKAGES := \ DeskClock \ Calculator \ Calendar \ Camera2 \ Email \ Test
注意:預(yù)置google play不需要步驟5?。oso庫)
5.將從Test.apk解壓出來的 so庫拷貝到alps/vendor/mediatek/${Project}/artifacts/out/target/product/${Project}/system/lib/目錄下,若無 so 庫,則去掉此步;
6.編譯
單獨(dú)編譯預(yù)置的apk模塊
一. 首先在Android源代碼目錄下的build目錄下,有個(gè)腳本文件envsetup.sh,執(zhí)行這個(gè)腳本文件后,就可以獲得一些有用的工具:
USER-NAME@MACHINE-NAME:~/Android$ . ./build/envsetup.sh
注意,這是一個(gè)source命令,執(zhí)行之后,就會(huì)有一些額外的命令可以使用:
二.指定編譯模式
lunch 20 (以20 eng為例。)
三. 使用mmm命令來編譯指定的模塊。
在源碼根目錄下執(zhí)行
.....Android # mmm packages/apps/Test
編譯完成之后,就可以在out/target/product/generic/system/app目錄下看到Test.apk文件了。Android系統(tǒng)自帶的App都放在這具目錄下。
四. 編譯好模塊后,還要重新打包一下system.img文件。
在android源碼根目錄下執(zhí)行如下命令:
USER-NAME@MACHINE-NAME:~/Android$ make snod
完成后就可以燒到板子上!?。?!
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
Android開發(fā)實(shí)現(xiàn)的ViewPager引導(dǎo)頁功能(動(dòng)態(tài)加載指示器)詳解
這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)的ViewPager引導(dǎo)頁功能(動(dòng)態(tài)加載指示器),結(jié)合實(shí)例形式詳細(xì)分析了Android使用ViewPager引導(dǎo)頁的具體步驟,相關(guān)布局、功能使用技巧,需要的朋友可以參考下2017-11-11
Android模仿美團(tuán)頂部的滑動(dòng)菜單實(shí)例代碼
最近在工作遇到一個(gè)需要,要做一個(gè)滑動(dòng)菜單,實(shí)現(xiàn)的效果類似美團(tuán)頂部的滑動(dòng)菜單,所以下面這篇文章主要給大家介紹了關(guān)于Android如何模仿美團(tuán)頂部滑動(dòng)菜單的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08
Android創(chuàng)建服務(wù)之started service詳細(xì)介紹
這篇文章主要介紹了Android創(chuàng)建服務(wù)之started service,需要的朋友可以參考下2014-02-02
Android自動(dòng)編輯文本框(AutoCompleteTextView)使用方法詳解
這篇文章主要為大家詳細(xì)介紹了Android自動(dòng)編輯文本框AutoCompleteTextView的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02
Android ListView 默認(rèn)選中某一項(xiàng)實(shí)現(xiàn)代碼
這篇文章主要介紹了Android ListView 默認(rèn)選中某一項(xiàng)實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
Android通過ImageView設(shè)置手指滑動(dòng)控件縮放
這篇文章主要介紹了Android通過ImageView設(shè)置手指滑動(dòng)控件縮放效果,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-12-12
Android同步異步任務(wù)與多線程及Handler消息處理機(jī)制基礎(chǔ)詳細(xì)講解
這篇文章主要介紹了Android同步異步任務(wù)與多線程及Handler消息處理機(jī)制基礎(chǔ),handler其實(shí)就是主線程在起了一個(gè)子線程,子線程運(yùn)行并生成Message,Looper獲取message并傳遞給Handler,Handler逐個(gè)獲取子線程中的Message,感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下2022-11-11
Android實(shí)現(xiàn)頁面滑動(dòng)切換動(dòng)畫
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)頁面滑動(dòng)切換動(dòng)畫,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12

