如何在AOSP源代码中添加预构建的应用程序(系统应用程序) [英] How to Add Pre-built App (System App) in AOSP source code

查看:155
本文介绍了如何在AOSP源代码中添加预构建的应用程序(系统应用程序)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在AOSP版本10中添加一个APK作为系统应用程序.我遵循了几乎不同的链接中提到的过程,这些链接在此处添加AOSP中的apk ,但没有任何效果.此链接中提到的过程以及我遵循的步骤是:

I was trying to add an APK in AOSP version 10 as system application. I have followed the procedure mentioned in almost different links which is here Add apk in AOSP but nothing worked. The process mentioned in this link and the steps I followed are:

  1. 将我的Apk放入 Aosp_root/packages/apps/my-app-folder/my-app.apk
  2. /my-app-folder
  3. 中写入 my-app.apk Android.mk

Android.mk

    LOCAL_PATH := $(call my-dir)
    
    include $(CLEAR_VARS)
    
    LOCAL_MODULE_TAGS := optional
    
    LOCAL_MODULE := Signal
    
    LOCAL_CERTIFICATE := platform
    
    LOCAL_SRC_FILES := Signal-website-universal-release-4.55.8.apk
    
    LOCAL_MODULE_CLASS := APPS
    
    LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
    
    include $(BUILD_PREBUILT)

  1. 然后在第3步中,在 core.mk common.mk 中添加 PRODUCT_PACKAGES ,我找不到两个指定的文件(指定目录( build/target/products )中的core.mk common.mk ).但是我在 build/target/product 文件夹中找到了 gsi-common.mk 文件,并在此文件中找到了 PRODUCT_PACKAGES ,并添加了my-app目录在其中.
  1. Then in step 3 to add PRODUCT_PACKAGES in core.mk or common.mk I could not find both specified files (core.mk or common.mk) in specified directory (build/target/products). But I found gsi-common.mk file in build/target/product folder and found PRODUCT_PACKAGES in this file and added directory of my-app in it.

这是 gsi-common.mk 的代码.

   `PRODUCT_PACKAGES += \
    messaging \
    PhotoTable \
    WAPPushManager \
    WallpaperPicker \
    Signal \`

  1. aosp-root 重建AOSP并将其刷新到设备后,没有任何改变,未添加 my-app.apk .然后我在 packages/apps 目录中使用了 mm 命令,并构建了 my-app.apk ,并添加到了 aosp_root/out中/target/product/taimen/system/app .之后,我运行make snod命令重新生成系统映像并创建它.当我在Pixel设备中刷新此图片时,它卡在了Google徽标上,并且还显示操作系统已损坏,然后再显示了Google徽标.
  1. After rebuilding AOSP for aosp-root and flashing it on device nothing has changed, my-app.apk was not added. Then i used mm command in packages/apps directory and it built my-app.apk and it was added in aosp_root/out/target/product/taimen/system/app. After it I run make snod command to re-generate system image and it was created. When I flashed this image in my Pixel device it stucks on Google logo and also shows operating system is corrupt before it shows google logo.

您能告诉我我缺少什么或哪一步错了吗?

推荐答案

针对Android 11和Android 8.1进行回答

Answering this for Android 11 and Android 8.1

在以下位置为您的应用程序创建一个文件夹< AOSP根目录>/package/apps/< yourAppFolder>

Create a folder for your application in <AOSP-root-directory>/package/apps/<yourAppFolder>

yourAppFolder 内部创建具有以下内容的 Android.mk 文件

Inside yourAppFolder create an Android.mk file with below content

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := optional

LOCAL_MODULE := < your app folder name >

LOCAL_CERTIFICATE := platform

LOCAL_SRC_FILES := < app apk filename >

LOCAL_MODULE_CLASS := APPS

LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)

include $(BUILD_PREBUILT)

将apk文件放在同一文件夹中.

Put your apk file in the same folder.

现在,我们必须在系统映像中包含apk来做到这一点,为此,我们必须在文件的 PRODUCT_PACKAGES 列表中提及模块名称:

Now we've to include the apk in the system image to do that, to do that we've to mention the module name in the PRODUCT_PACKAGES list in the file:

对于android 11- aosp-root-dir/build/target/product/handheld_system.mk

For android 11 - aosp-root-dir/build/target/product/handheld_system.mk

对于android 8.1- aosp-root-dir/build/target/product/core.mk

For android 8.1 - aosp-root-dir/build/target/product/core.mk

这篇关于如何在AOSP源代码中添加预构建的应用程序(系统应用程序)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆