您好,登錄后才能下訂單哦!
這篇文章主要介紹在Android系統源碼中如何預置APK,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
如何將無源碼的google play APK預置進系統(有源碼和無源碼有一點區別,網上下載的google play.apk解壓之后里面沒有源碼)?
(注意下文中的Test就是我們要預置到源碼中的googleplay.apk的名字!!網上下載的Google Play Store 4.6.17.apk,名字中含有空格,將空格去掉或者自直接將它重新命名)
1.在 packages/apps 下面以需要預置的 APK 名字創建文件夾,以預制一個名為Test的APK為例
2.將 Test.apk 放到 packages/apps/Test 下面
3.在 packages/apps/Test 下面創建文件 Android.mk,文件內容如下 :
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
注意:預置google play不需要步驟5!(無so庫)
5.將從Test.apk解壓出來的 so庫拷貝到alps/vendor/mediatek/${Project}/artifacts/out/target/product/${Project}/system/lib/目錄下,若無 so 庫,則去掉此步;
6.編譯
單獨編譯預置的apk模塊
一. 首先在Android源代碼目錄下的build目錄下,有個腳本文件envsetup.sh,執行這個腳本文件后,就可以獲得一些有用的工具:
USER-NAME@MACHINE-NAME:~/Android$ . ./build/envsetup.sh
注意,這是一個source命令,執行之后,就會有一些額外的命令可以使用:
二.指定編譯模式
lunch 20 (以20 eng為例。)
三. 使用mmm命令來編譯指定的模塊。
在源碼根目錄下執行
.....Android # mmm packages/apps/Test
編譯完成之后,就可以在out/target/product/generic/system/app目錄下看到Test.apk文件了。Android系統自帶的App都放在這具目錄下。
四. 編譯好模塊后,還要重新打包一下system.img文件。
在android源碼根目錄下執行如下命令:
USER-NAME@MACHINE-NAME:~/Android$ make snod
完成后就可以燒到板子上!!!!
以上是“在Android系統源碼中如何預置APK”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。