0

我正在尝试从我的应用程序中禁用其中一个应用程序。我创建了一个启动器应用程序并尝试使用以下包管理器方法

pm.setApplicationEnabledSetting(packageInfo.packageName, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);

但是我收到 SecurityException 作为 SecurityException: Permission Denial: try to change component state from pid=20217, uid=10066, package uid=10067

注意:在某处我发现解决方案是在清单中提及以下权限

但是我在这个权限中收到一个警告,这个权限只授予系统应用程序。

4

1 回答 1

0

为了禁用/启用其他应用程序,您的应用程序必须具有系统权限。要获得特权,您应该执行以下步骤。

将此行添加到您的清单标题android:sharedUserId="android.uid.system"

将此权限添加到清单 “android.permission.CHANGE_COMPONENT_ENABLED_STATE”

使用系统密钥为您的应用程序签名。

我在我的启动器应用程序中检查了它。

于 2018-09-04T19:53:38.373 回答