首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Android 12 AOSP中添加预构建的“系统应用程序”

如何在Android 12 AOSP中添加预构建的“系统应用程序”
EN

Stack Overflow用户
提问于 2022-08-21 12:01:41
回答 1查看 469关注 0票数 0

我试图将AOSP android12.1.0_r24中描述的这里添加为系统应用程序。我正在构建带有午餐参数sdk_car_arm64-userdebug的模拟器。我遵循了链接中提到的程序,意思是:

  1. 我把apk放进了aosp_root/packages/apps/CarAOSPHost/AOSPHost.apk
  2. Android.mk of AOSPHost.apk in /CarAOSPHost
代码语言:javascript
复制
LOCAL_PATH := $(my-dir)
################## Start of AOSPHost target ##################
include $(CLEAR_VARS)
LOCAL_MODULE := CarAOSPHost
LOCAL_LICENSE_KINDS := legacy_notice
LOCAL_LICENSE_CONDITIONS := notice
LOCAL_MODULE_OWNER := google
LOCAL_SRC_FILES := AOSPHost.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_BUILT_MODULE_STEM := package.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_PRIVILEGED_MODULE := true
LOCAL_PRODUCT_MODULE := true
LOCAL_DEX_PREOPT := false
include $(BUILD_PREBUILT)
  1. 创建的权限文件
代码语言:javascript
复制
<permissions>
    <!-- Rename the package to com.android.car.templates.host -->
    <privapp-permissions package="com.android.car.templates.host">
        <!-- To be able to display activities in the cluster -->
        <permission name="android.car.permission.CAR_DISPLAY_IN_CLUSTER" />

        <!-- To be able to show navigation state (turn by turn directions) in the cluster.-->
        <permission name="android.car.permission.CAR_NAVIGATION_MANAGER" />

        <!-- To be considered a system-approved host -->
        <permission name="android.car.permission.TEMPLATE_RENDERER" />
    </privapp-permissions>

    <!-- Declare support for templated applications. -->
    <feature name="android.software.car.templates_host" />
</permissions>
  1. 然后我将PRODUCT_PACKAGES添加到aosp-root/build/target/product/handheld_system.mk中:这是堆栈溢出中推荐的
  2. 此外,我还在aosp-root/build/target/product/handheld_system.mk中包含了aosp-root/build/target/product/handheld_system.mk中的权限
代码语言:javascript
复制
PRODUCT_COPY_FILES += \
    packages/apps/CarAOSPHost/com.android.car.templates.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.car.templates.host.xml
  1. 然后,当我构建时,我得到了这个错误:
代码语言:javascript
复制
FAILED: 
build/make/core/artifact_path_requirements.mk:26: warning:  build/make/target/product/generic_system.mk produces files outside its artifact path requirement. Allowed paths are root/*, system/*
Offending entries:
product/priv-app/CarAOSPHost/CarAOSPHost.apk
In file included from build/make/core/main.mk:1342:
build/make/core/artifact_path_requirements.mk:26: error: Build failed.
11:24:21 ckati failed with: exit status 1

如果冒犯了条目,如何添加系统应用程序?还是应该在哪个.mk文件中添加?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73434214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档