天天看點

Android6.0權限動态配置設定

以是否擁有讀取記憶體卡權限為例:

第一步:定義常量

public static final int REQUET_WRITE_STORAGE = 1111;//讀取存儲卡請求碼

第二步:檢查權限,沒有授權去授權,有的話直接實作你想要的功能

//檢查是否擁有讀取記憶體卡權限

if (ContextCompat.checkSelfPermission(ProjectDetailActivity.this,
            android.Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) {

        // 已經獲得授權
        //做你想做的。。。

    } else {//沒有的話去申請
        ActivityCompat.requestPermissions(ProjectDetailActivity.this,
                new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQUET_WRITE_STORAGE );
    }
           

第三步: 處理權限回調

//處理權限回調

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);
    if (requestCode == Constants.REQUET_WRITE_STORAGE) {
        if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {

            // 已經獲得授權
            //做你想做的。。。

        } else {
            Toast.makeText(ProjectDetailActivity.this, "權限已被決絕", Toast.LENGTH_LONG).show();
        }
    }
           

以上就是Android6.0動态權限的擷取了,很實用