我需要在我的 AOSP 构建中添加一些第 3 方 APK。我应该将这些 APK 保存在什么文件夹中,以便在构建代码和创建镜像时将其安装在模拟器中?
系统应用似乎保存在 packages/app 文件夹中,所以我需要知道第三方 APK 的保存位置。
最佳答案
将第三方 APK 添加到构建中绝对是可能的。
另外,APK 和带有源代码的 APP 放在同一个地方; 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
中创建一个条目(从 AOSP 8.1.0 开始,它被称为 core.mk
,通常在 build/target/product
中找到)为您的 apk 添加行(检查所有其他行在哪里)
PRODUCT_PACKAGES += < what you have defined in LOCAL_MODULE, it should be your app folder name >
编译 AOSP,您就在系统上安装了一个全新的应用程序。
备注
- 如果您的 APK 已经签名,请使用特殊值
PRESIGNED
作为LOCAL_CERTIFICATE
的值 - 如果您希望您的 APK 以
/data/app/
结尾目录,添加行LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)
行前include $(BUILD_PREBUILT)
关于android - 如何在 AOSP 构建中添加 APK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10579827/