java - 拒绝权限 OPPO_COMPONENT_SAFE

标签 java android exception permissions oppo

我的应用程序中有服务需要在设备 OPPO 的后台运行。我在某处读到我们需要在应用程序设置中启用自动启动以保持服务运行,但我的权限有问题。

java.lang.SecurityException: Permission Denial: 从 ProcessRecord{904a19d 12604:elite.driver.adsmove.com.settingpermission/u0a214} 开始 Intent { cmp=com.coloros.safecenter/.startupapp.StartupAppListActivity } (pid=12604, uid= 10214) 需要 oppo.permission.OPPO_COMPONENT_SAFE

当我尝试这样做时

if (Build.MANUFACTURER.equals("OPPO")) {
    Intent[] AUTO_START_OPPO = {
        new Intent().setComponent(new ComponentName("com.coloros.safe", "com.coloros.safe.permission.startup.StartupAppListActivity")),
        new Intent().setComponent(new ComponentName("com.coloros.safe", "com.coloros.safe.permission.startupapp.StartupAppListActivity")),
        new Intent().setComponent(new ComponentName("com.coloros.safecenter", "com.coloros.safecenter.startupapp.StartupAppListActivity")),
        new Intent().setComponent(new ComponentName("com.coloros.safecenter", "com.coloros.safecenter.startup.StartupAppListActivity"))
    };

    for (Intent intent : AUTO_START_OPPO) {
        if (getPackageManager().resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY) != null) {
            try {
                startActivity(intent);
                break;
            } catch (Exception e) {
                Log.d(TAG, "OPPO - Exception: "+  e.toString());
            }
        }
    }
}

我也尝试添加权限并请求它但失败了
<!--for OPPO-->
<uses-permission android:name="oppo.permission.OPPO_COMPONENT_SAFE" />

期待有这方面经验的 friend 帮忙,谢谢!

最佳答案

尝试添加以下作为组件名称

ComponentName("com.coloros.safecenter", "com.coloros.privacypermissionsentry.PermissionTopActivity")
适用于 OPPO A3 设备

关于java - 拒绝权限 OPPO_COMPONENT_SAFE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49814755/

相关文章:

java - 内存高效的大型单词数组

java - CMake 找不到 JNI

c# - ThreadAbortException之后如何恢复?

Java:Try/Catch 语句:捕获到异常时,是否重复 try 语句?

java - Java中无需使用try即可抛出异常

c# - 什么相当于 Java Tomcat 中的 Application_EndRequest (ASP.NET)?

java - java中的文本区域循环

android - "File descriptor in bad state"在android设备上运行ffmpeg并选择输入设备时出错

android - Google Keep 在您的应用程序中列出备注

android - 安卓平板的标准分辨率是多少?