Android小技巧——判斷系統是否有開啓權限

public void requestPowerCamera(){
    if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA)
            != PERMISSION_GRANTED) {
        //申請權限,字符串數組內是一個或多個要申請的權限,1是申請權限結果的返回參數,在onRequestPermissionsResult可以得知申請結果
        ActivityCompat.requestPermissions(this,
                new String[]{
                        Manifest.permission.CAMERA
                }, 2);
    }
}



@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);
    switch (requestCode){
        case 1:
            for (int i = 0; i < permissions.length; i++) {
                if (grantResults[i] == PERMISSION_GRANTED) {
                    Toast.makeText(this, "" + "權限" + permissions[i] + "申請成功",
                            Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "" + "權限" + permissions[i] + "申請失敗",
                            Toast.LENGTH_SHORT).show();
                }
            }
            requestPowerLocation();
            break;
        case 2:
            for (int i = 0; i < permissions.length; i++) {
                if (grantResults[i] == PERMISSION_GRANTED) {
                    Toast.makeText(this, "" + "權限" + permissions[i] + "申請成功",
                            Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "" + "權限" + permissions[i] + "申請失敗",
                            Toast.LENGTH_SHORT).show();
                }
            }
            enterList();
            break;
        case 3:
            for (int i = 0; i < permissions.length; i++) {
                if (grantResults[i] == PERMISSION_GRANTED) {
                    Toast.makeText(this, "" + "權限" + permissions[i] + "申請成功",
                            Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "" + "權限" + permissions[i] + "申請失敗",
                            Toast.LENGTH_SHORT).show();
                }
            }
            requestPowerCamera();
            break;
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章