android - 构建 AOSP 并添加具有运行时权限的系统应用

标签 android apk android-source

我在 Android 6 AOSP 上工作。我能够构建将应用程序添加为系统应用程序 但现在我想在这个系统应用程序上默认添加运行时权限。就像这样,应用程序可以在不要求用户验证权限的情况下启动。

你知道我该怎么做吗?

感谢您的帮助。

最佳答案

如果您的应用程序具有特权,则在 list 中请求时会授予所有运行时权限。

使您的应用程序具有特权:
在 Android.mk 中

LOCAL_CERTIFICATE := platform
LOCAL_PRIVILEGED_MODULE := true

如果这不能解决您的问题:
1.您可以在运行时为您的应用授予运行时权限。应用必须有 android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS。 Pm.java

IPackageManager pm = IPackageManager.Stub.asInterface(ServiceManager.getService("package"));
pm.grantRuntimePermission(pkgname, perm, UserHandle.USER_OWNER);
pm.updatePermissionFlags(perm, pkgname, PackageManager.FLAG_PERMISSION_GRANTED_BY_DEFAULT,
PackageManager.FLAG_PERMISSION_GRANTED_BY_DEFAULT, UserHandle.USER_OWNER);
  1. 您可以通过修改手动授予权限 DefaultPermissionGrantPolicy.java .

此外,如果应用程序使用与系统共享的用户 ID。即使 list 中未请求任何权限,也会授予任何权限。

android:sharedUserId="android.uid.system".

关于android - 构建 AOSP 并添加具有运行时权限的系统应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48743350/

相关文章:

android - 如何在 Android 9 上赋予 WiFi 高于以太网的优先级?

java - android如何生成 'current.txt'它的api描述文件?

android - 从广播事件切换到奥托有什么好处

android - 使用 paypal 沙箱的信用卡付款返回响应为 "state": "created"?

php - 如何通过网站生成android应用程序?

Android 从 URL 安装 apk

android - Facebook SDK + SlidingMenu SDK = Jar 不匹配!修复你的依赖

java - Room DAO 无法从数据库检索数据

android - 如何仅在手机上安装了与之相关的apk时才显示菜单选项

android - Android 2d Gallery 源代码中未初始化的变量