Как запросить разрешение: READ_PRIVILEGED_PHONE_STATE? - PullRequest
0 голосов
/ 17 июня 2020

Как я могу запросить разрешение «android .permission.READ_PRIVILEGED_PHONE_STATE»? Я знаю, что начиная с Android 10 сторонние приложения, установленные из Google Play Store, не могут объявлять привилегированные разрешения.

https://developer.android.com/about/versions/10/privacy/changes#data -ids

Однако мой приложение не будет распространяться через Google Play Store. Я поделюсь файлом apk, и пользователи установят приложение вручную.

Я объявил разрешение в манифесте:

<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />

Я также пытаюсь запросить его как любое обычное разрешение:

if(ActivityCompat.checkSelfPermission(this.getApplicationContext(), "android.permission.READ_PRIVILEGED_PHONE_STATE") != PackageManager.PERMISSION_GRANTED)        {
            ActivityCompat.requestPermissions(this, new String[]{"android.permission.READ_PRIVILEGED_PHONE_STATE"},123);
        }

Но ничего не происходит. Мне не предлагается предоставить это разрешение. Диалоговое окно с предупреждением не отображается. Как я могу запросить это разрешение?

1 Ответ

0 голосов
/ 17 июня 2020

Нельзя поставить это разрешение для android 10 версии. Вы можете изменить значение targetSdkVersion на значение ниже 29

Android 10 изменит разрешения для идентификаторов устройств, так что все идентификаторы устройств теперь защищены разрешением READ_PRIVILEGED_PHONE_STATE. Разрешение READ_PRIVILEGED_PHONE_STATE предоставляется только приложениям, подписанным с ключ платформы и привилегированные системные приложения.

ссылка:

https://source.android.com/devices/tech/config/device-identifiers

...