2

我正在编写一个 Android 应用程序,它将在具有我可以控制的 ROM 的自定义硬件上运行。

该设备将运行单个应用程序(作为启动器),并且一旦部署该设备,我(通常)将无法再访问它。该应用程序还支持自我更新。

因此,我需要一种方法来正确处理应用程序的权限,即如果将权限添加到清单中,则需要自动授予权限(包括危险的权限)。

现在,该应用程序正在使用与设备上运行的 Android 操作系统相同的证书进行签名,并且该应用程序在设备刷新时放置在 priv-app 目录中。我认为这会自动授予权限,但似乎并非如此。

我已经尝试添加android:sharedUserId="android.uid.system"到清单中,并且确实授予了所有权限,但是由于“野外”已经有很多旧设备,添加此选项使其无法再更新应用程序(抛出INSTALL_FAILED_SHARED_USER_INCOMPATIBLE错误)。

那么,在这种情况下处理权限的最佳方法是什么?我在这里还缺少其他一些巫毒魔法吗?我应该咬紧牙关,添加sharedUserId选项并手动更新所有设备(不需要,但可能的选项)?

4

0 回答 0