1. Activity請求權(quán)限 (Android6.0 = TargetAPI 23)
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED) {//申請數(shù)據(jù)存儲權(quán)限
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
WRITE_EXTERNAL_STORAGE_REQUEST_CODE);
}
2. 請求回調(diào)(授權(quán)或者拒絕)
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == WRITE_EXTERNAL_STORAGE_REQUEST_CODE) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// Permission Granted 授權(quán)
} else {
// Permission Denied 拒絕
}
}
}
3. Fragment請求權(quán)限
在Fragment中申請權(quán)限,不要使用ActivityCompat.requestPermissions,
直接使用Fragment的requestPermissions方法,
否則會回調(diào)到Activity的onRequestPermissionsResult
4. 運行時權(quán)限
- READ_CALENDAR //日歷
- WRITE_CALENDAR
- CAMERA //相機
- READ_CONTACTS //聯(lián)系人
- WRITE_CONTACTS
- GET_ACCOUNTS
- ADD_VOICEMAIL
- ACCESS_FINE_LOCATION //定位
- ACCESS_COARSE_LOCATION
- PROCESS_OUTGOING_CALLS
- RECORD_AUDIO //錄音
- READ_PHONE_STATE
- CALL_PHONE //打電話
- READ_CALL_LOG
- WRITE_CALL_LOG
- USE_SIP
- BODY_SENSORS
- SEND_SMS //短信
- RECEIVE_SMS
- READ_SMS
- RECEIVE_WAP_PUSH
- RECEIVE_MMS
- READ_EXTERNAL_STORAGE //存儲
- WRITE_EXTERNAL_STORAGE
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者