READ_PHONE_NUMBERS не работает ниже Android O - PullRequest
2 голосов
/ 05 июля 2019

Я запрашиваю это разрешение READ_PHONE_NUMBERS.На 26 и выше работает нормально, но ниже 26 диалоговое окно разрешений для отображения разрешений и запретов не появляется.Закодировано как показано ниже.

 ActivityCompat.requestPermissions(mActivity, new String[]{android.permission.READ_PHONE_NUMBERS}, RC_PN);

Как я могу заставить его работать ниже Android 26 (Oreo).?Заранее спасибо.

1 Ответ

1 голос
/ 05 июля 2019

Используйте код ниже для разных версий Android

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
ActivityCompat.requestPermissions(mActivity, new String[{android.permission.READ_PHONE_NUMBERS}, RC_PN);} 
else {
TelephonyManager tMgr =(TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE);
String mPhoneNumber = tMgr.getLine1Number();}

AndroidManifest.xml

    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.READ_PHONE_NUMBERS" />
    <uses-permission android:name="android.permission.READ_SMS" />

Подробнее

Требуется Manifest.permission.READ_PHONE_STATE или Manifest.permission.READ_SMS или Manifest.permission.READ_PHONE_NUMBERS

Ссылка

...