Android-7.0權限處理問題

Android 處理7.0以上的權限,有些東西會報空,比如打開相機黑屏,FileNotFund,
打開處理資源之前先看看有沒有權限

  //檢測是否有相機和讀寫文件權限
        if (ContextCompat.checkSelfPermission(UIUtils.getContext(), Manifest.permission.CAMERA)
                != PackageManager.PERMISSION_GRANTED
                || ContextCompat.checkSelfPermission(UIUtils.getContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE)
                != PackageManager.PERMISSION_GRANTED) {
            requestPermissions(new String[]{Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE}, CAMERA_PERMISSIONS_REQUEST_CODE);
        } else {
            //打開相機獲取圖片
            test();
        }

Activity回調中

 @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);

        switch (requestCode) {
            case CAMERA_PERMISSIONS_REQUEST_CODE: {//調用系統相機申請拍照權限回調
                if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {

                    test();
                } else {
                    UIUtils.runOnUIToast("你拒絕了相機權限,無法使用二維碼掃描");
                }
                break;


            }

        }
    }
//所有權限列表(常用)

Manifest.permission.CAMERA //相機
Manifest.permission.WRITE_EXTERNAL_STORAGE //存儲
Manifest.permission.CALL_PHONE//打電話



部分常用權限(圖片來自互聯網)

image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,552評論 25 708
  • ¥開啟¥ 【iAPP實現進入界面執行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,554評論 0 17
  • 1.什么是Activity?問的不太多,說點有深度的 四大組件之一,一般的,一個用戶交互界面對應一個activit...
    JoonyLee閱讀 5,764評論 2 51
  • Section2.習慣養成是一種刻意的訓練(針對性訓練),必須在精力比較充足,能量狀態比較良好的情況下的自我提升方...
    SYbook閱讀 338評論 1 2
  • 人以群分,物以類聚。我就是一個徹頭徹尾的屌絲,所以我感覺身邊的這群人,都和常人有些區別。以此文紀念那些在的和逝去的兄弟!
    是以話語道初晴閱讀 176評論 0 1