Рекомендуется использовать AndPermission
Android6.0 инструмент для запроса разрешений во время выполнения, Android Marshmallow runtime permission utils
Для ознакомления с проектом можно обратиться к следующим блогам:
http://www.jianshu.com/p/1841a74543c1
http://blog.csdn.net/lwk520136/article/details/72621729
Механизм разрешений во время выполнения, представленный в Android6.0, добавил разработчикам ещё немного работы. При необходимости использования 9 классов чувствительных разрешений необходимо динамически запрашивать права на использование. Однако стандартная реализация слишком громоздка. Если бы для каждого разрешения приходилось писать кучу шагов по запросу, я думаю, разработчики быстро бы сошли с ума. Поэтому создание унифицированного фреймворка запросов было крайне необходимо. RTPermission был создан именно для того, чтобы упростить процесс запроса. Если вам это нужно, пожалуйста, star и fork.
Здесь можно найти последнюю версию.
1. Импорт библиотеки в Gradle
#last-version смотрите последнюю версию выше
#AndroidStudio3.0 ниже
compile 'com.lwkandroid:RTPermissionLib:last-version'
#AndroidStudio3.0 и выше
implemetation 'com.lwkandroid:RTPermissionLib:last-version'
2. Вызов кода
new RTPermission.Builder()
.permissions(String... permissions)
.start(Activity activity, new OnPermissionResultListener()
{
@Override
public void onAllGranted(String[] allPermissions)
{
//все разрешения получены после обратного вызова
}
@Override
public void onDeined(String[] dinedPermissions)
{
//некоторые разрешения не были получены после обратного вызова
}
});
-dontwarn com.lwkandroid.rtpermission.**
-keep class com.lwkandroid.rtpermission.**{*;}
//Контакты
group:android.permission-group.CONTACTS
permission:android.permission.WRITE_CONTACTS
permission:android.permission.GET_ACCOUNTS
permission:android.permission.READ_CONTACTS
//Телефонные звонки
group:android.permission-group.PHONE
permission:android.permission.READ_CALL_LOG
permission:android.permission.READ_PHONE_STATE
permission:android.permission.CALL_PHONE
permission:android.permission.WRITE_CALL_LOG
permission:android.permission.USE_SIP
permission:android.permission.PROCESS_OUTGOING_CALLS
permission:com.android.voicemail.permission.ADD_VOICEMAIL
//Календарь и расписание
group:android.permission-group.CALENDAR
permission:android.permission.READ_CALENDAR
permission:android.permission.WRITE_CALENDAR
//Камера
group:android.permission-group.CAMERA
permission:android.permission.CAMERA
//Датчики тела
group:android.permission-group.SENSORS
permission:android.permission.BODY_SENSORS
//Местоположение
group:android.permission-group.LOCATION
permission:android.permission.ACCESS_FINE_LOCATION
permission:android.permission.ACCESS_COARSE_LOCATION
//Внешняя память
group:android.permission-group.STORAGE
permission:android.permission.READ_EXTERNAL_STORAGE
permission:android.permission.WRITE_EXTERNAL_STORAG
•Микрофон
group:android.permission-group.MICROPHONE
permission:android.permission.RECORD_AUDIO
•SMS
group:android.permission-group.SMS
permission:android.permission.READ_SMS
permission:android.permission.RECEIVE_WAP_PUSH
permission:android.permission.RECEIVE_MMS
permission:android.permission.RECEIVE_SMS
permission:android.permission.SEND_SMS
permission:android.permission.READ_CELL_BROADCASTS
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )