- 1
- if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
- 2 3 // 需要解释的权限许可
- 4
- if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity, Manifest.permission.READ_CONTACTS)) {
- 5 6 // 显示一个解释给用户*asynchronously* -- 不要阻塞,采用异步形式等待用户的响应,用户看到说明后,再试一次请求权限。
- 7
- } else { // 不需要解释的权限许可
- 8 9 ActivityCompat.requestPermissions(thisActivity, new String[] {
- Manifest.permission.READ_CONTACTS
- },
- MY_PERMISSIONS_REQUEST_READ_CONTACTS);
- 10 // MY_PERMISSIONS_REQUEST_READ_CONTACTS(int)回调方法获取请求结果
- 11
- }
- 12
- }
来源: