如何在AOSP版本中添加APK?

我需要添加一些第三方APK到我的AOSP版本。 我应该保留这些APK的哪个文件夹,以便在构build代码和创build图像时将其安装在模拟器中?

看起来系统应用程序保存在packages / app文件夹中,所以我需要知道第三方APK的保存位置。

Solutions Collecting From Web of "如何在AOSP版本中添加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一个条目(通常在build/target/product )为你的apk添加行(检查所有其他的位置)

 PRODUCT_PACKAGES += < what you have defined in LOCAL_MODULE, it should be your app folder name > 

编译AOSP,并在系统上安装一个全新的应用程序。

您也可以在目标输出目录中执行以下操作:

 <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 

在这一点上,你可以做任何你想要的文件system_root的变化,即添加apks到系统/应用程序等…

当你完成后,回到输出目录,然后:

 sudo umount system_root <path-to-your-build-dir>/host/linux-x86/bin/img2simg temp.img system.img 

你现在可以像往常一样使用fastboot来刷新system.img。

上面介绍的Android.mk会将APK安装在/ system / app中

如果您希望在/ data / app中安装APK,则需要在include $(BUILD_PREBUILT)的行之前include $(BUILD_PREBUILT)添加到Android.mk中,

 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)