我需要添加一些第三方APK到我的AOSP版本。我應該保留這些APK的哪個文件夾,以便在構建代碼並創建圖像時將其安裝在模擬器中?如何在AOSP版本中添加APK?
它看起來像系統應用程序保存在包/應用程序文件夾中,所以我需要知道第三方APK的保存位置。
我需要添加一些第三方APK到我的AOSP版本。我應該保留這些APK的哪個文件夾,以便在構建代碼並創建圖像時將其安裝在模擬器中?如何在AOSP版本中添加APK?
它看起來像系統應用程序保存在包/應用程序文件夾中,所以我需要知道第三方APK的保存位置。
向版本添加第三方APK絕對有可能。
此外,APK和具有源代碼的應用程序會轉到同一個地方; package/app
文件夾。
添加新APK到構建
在AOSP根添加的文件夾:
<aosp root>/package/app/<yourappfolder>
然後這個文件夾裏面添加:
Android.mk
<yourapp.apk>
Android的make文件應該有參考您的APK,添加到您的Android.mk
:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := < your app folder name >
LOCAL_CERTIFICATE := < desired key >
LOCAL_SRC_FILES := < app apk filename >
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
創建於commons.mk
(通常在build/target/product
)爲您的APK添加一個條目行(檢查所有其他人在哪裏)
PRODUCT_PACKAGES += < what you have defined in LOCAL_MODULE, it should be your app folder name >
編譯AOSP,你有一個全新的應用程序安裝在系統上。
謝謝。我厭倦了我看到的所有ROM廚房的帖子。 –
@Tiago:什麼是LOCAL_CERTIFICATE:= <所需鍵>。你能否清楚這一點? – Raj
抱歉,延遲,也很抱歉在這裏混亂,但回覆格式不起作用。 核心Android平臺使用四個密鑰來維護核心平臺組件的安全性: 1.平臺:作爲核心平臺一部分的軟件包的關鍵。 2.共享:在家庭/聯繫人進程中共享的事物的關鍵。 3.媒體:作爲媒體/下載系統組成部分的軟件包的關鍵。 4. releasekey:如果未另行指定,則使用默認密鑰進行簽名。 看到這裏:http://www.kandroid.org/online-pdk/guide/release_keys.html –
你也可以做的目標輸出目錄如下:
<path-to-your-build-dir>/host/linux-x86/bin/simg2img system.img temp.img
mkdir system_root
sudo mount -t ext4 -o loop temp.img system_root
在這一點上,你可以做出各種變化,你想在系統根文件,即增加的APK到系統/應用程序等。 ..
當你完成只是去回落到輸出目錄,並做到:
sudo umount system_root
<path-to-your-build-dir>/host/linux-x86/bin/img2simg temp.img system.img
您現在可以閃system.img使用FASTBOOT如常。
這是一個更接近的問題,但並不完全是對特定問題的回答,因爲此方法是對圖像進行構建後修改,而不是構建過程的方式ude應用程序。儘管如此,它至少可以編寫腳本。 –
的Android.mk上面介紹如果您希望在/ data/app中安裝APK,您需要添加以下行之前的Android.mk線將安裝APK在/ system/app中
include $(BUILD_PREBUILT)
LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)
的可能的複製[預構建的APK添加到Android AOSP system.img](http://stackoverflow.com/questions/8387477/add-prebuilt-apks-to-android-aosp-system-img) –