Как получить статус включить или отключить для разрешения автоматического запуска в Android программно - PullRequest
0 голосов
/ 31 мая 2019

Я хочу проверить состояние разрешения «Автозапуск» в телефоне Vivo, у меня есть решение открыть эту настройку, но я не могу проверить, включено ли / выключено состояние в разрешении «Автозапуск» для моего приложения. Если он включен, то не стоит открывать эту настройку автозапуска.

Как я могу решить это?

Используя приведенный ниже код, я открываю настройку автоматического запуска.

    try {
        val intent = Intent()
        val manufacturer = Build.MANUFACTURER
        if ("xiaomi".equals(manufacturer, ignoreCase = true)) {
            intent.component = ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity")
        } else if ("oppo".equals(manufacturer, ignoreCase = true)) {
            intent.component = ComponentName("com.coloros.safecenter", "com.coloros.safecenter.permission.startup.StartupAppListActivity")
        } else if ("vivo".equals(manufacturer, ignoreCase = true)) {
            intent.component = ComponentName("com.vivo.permissionmanager", "com.vivo.permissionmanager.activity.BgStartUpManagerActivity")
        } else if ("Letv".equals(manufacturer, ignoreCase = true)) {
            intent.component = ComponentName("com.letv.android.letvsafe", "com.letv.android.letvsafe.AutobootManageActivity")
        } else if ("Honor".equals(manufacturer, ignoreCase = true)) {
            intent.component = ComponentName("com.huawei.systemmanager", "com.huawei.systemmanager.optimize.process.ProtectActivity")
        }
        val uri = Uri.fromParts("package", context.getPackageName(), null)
        intent.data = uri
        val list = context.packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY)
        if (list.size > 0) {
            context.startActivity(intent)
        }
    } catch (e: Exception) {
        Log.e("exc", e.toString())
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...