在 AOSP 构建中将预构建的 APK 作为设备管理员,并为 Android 14 提供预授予的运行时权限

问题描述 投票:0回答:1

我正在致力于将预构建的 APK 集成到基于 Android 14 的系统的 AOSP(Android 开源项目)构建中,我想将其配置为设备管理员和所有者。此外,我需要预先授予此应用程序一些运行时权限。

这是我所拥有的以及我希望实现的目标:

  1. 预构建 APK:我有一个 APK,我想将其包含在 AOSP 构建中而不修改其源代码。

  2. 设备管理员和所有者:此应用程序需要设置为设备管理员和所有者。

  3. 运行时权限:一些通常在运行时授予的权限需要预先授予,因为应用程序将在系统中发挥关键作用。

我的问题是:

  1. 预构建的 APK 集成:将预构建的 APK 添加到 AOSP 构建系统的最佳方法是什么?

  2. 设备管理员设置:如何在构建过程中将预构建的应用程序设置为设备管理员和所有者?

  3. 预授予权限:考虑到新的权限模型更改,需要采取哪些步骤在 Android 14 上为我的应用程序预授予特定的运行时权限?

  4. Android 14 注意事项:在针对 Android 14 执行这些任务时,我应该注意哪些具体更改或注意事项?

我已经搜索了文档和现有的 Stack Overflow 问题,但尚未找到包含 Android 14 这些要求的明确指南。任何帮助或指向正确文档的指示将不胜感激!

预先感谢您的协助!

这是我迄今为止尝试过的:

  1. 放置APK:我将APK放置在
    packages/apps
    目录中。
  2. 构建配置:我将应用程序的名称添加到
    PRODUCT_PACKAGES
    中的
    build/target/product/handheld_system.mk
  3. 特权模块:最初,我在应用程序的
    LOCAL_PRIVILEGED_MODULE
    文件中将
    true
    设置为
    Android.mk
    。但是,这会导致应用程序在启动后不出现。

当我删除

LOCAL_PRIVILEGED_MODULE
时,该应用程序会显示,但它不具备充当设备管理员所需的系统权限。

我原以为设置

LOCAL_PRIVILEGED_MODULE
将使我的应用程序成为具有必要权限和管理功能的系统特权应用程序,但它似乎阻止了应用程序的正确安装。

android adb android-permissions android-source android-build
1个回答
0
投票
  1. 捆绑预构建的APK - priv-app 目录是一个好地方,但也需要权限whitelist.xml,因此请确保提供该权限。参考:特权权限白名单
  2. 预授予一些权限:可以按照default-permissions xml的方式,:Android系统开发者的权限 。 Android 7 中的示例:(我在 10 中尝试过此操作,并且确实有效)https://android.googlesource.com/device/google/marlin/+/nougat-dr1-release/default-permissions.xml
© www.soinside.com 2019 - 2024. All rights reserved.