首页 > 解决方案 > 包含的预构建 APK 作为系统应用程序无法正常工作

问题描述

我正在开发自定义 Android 构建,其中预构建应作为系统应用程序包含在内。简单地说,这个应用程序在它之后添加了 VPN 配置文件和打开链接。

我做了以下没有结果。我不遗余力。

  1. 首先,我将 APK 添加到packages/apps/<app name>,并将其模块名称build/make/target/product/base_system.mk包含在其中以包含在/system. 它成功收录在/system/priv-apps/. 参考
  2. 按照这些步骤,我将 APK 重新签名为系统应用程序并添加android:sharedUserId="android.uid.system"到应用程序中。成功完成并使用adb shell ps -Z | grep system_app.
  3. Selinux 策略拒绝了大部分使用的操作audit2allow,并将允许语句添加到system/sepolicy/public/init.te.

结果:应用程序已安装,但似乎操作系统阻止了它的一些服务/进程或其他东西并且无法正常运行,我也发现了这个 I/system_server: oneway function results will be dropped but finished with status OK and parcel size 4

AFAIK,系统应用程序可以访问极高级别的系统。但这不是正在发生的事情。

为什么 Sepolicy 拒绝system_app请求? 这些步骤有什么问题吗?我应该怎么做才能使应用程序正常工作?

更新。

该应用程序包含预建.so文件,现在错误是该应用程序无法运行这些文件。

Cannot run program "/system/priv-app/****/lib/arm64/libovpnexec.so": error=2, No such file or directory

标签: androidandroid-source

解决方案


推荐阅读