android 應用開啟以後,動態檢測並或者相機許可權。
阿新 • • 發佈:2019-01-06
針對android 6.0(API 23)以前的版本,只需要在【AndroidManifedt.xml】裡面新增應用許可權,應用安裝完成以後即可正常使用。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
但是,對於android 6.0(API 23)以後的版本,系統允許使用者單獨管理應用的某個許可權,可以關閉/開啟許可權。
比如某個應用需要相機許可權,而在此之前使用者已經針對該應用禁用了相機許可權,我們在啟動該應用的時候就會出現異常(例如閃退)。
這裡,我們需要在應用啟動以後,第一時間去檢測相關許可權問題,比如相機許可權:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
//申請WRITE_EXTERNAL_STORAGE許可權
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA},1);}
以上程式碼就是檢測相機許可權,如果未或者,則彈窗提示。如果允許則會開啟相關許可權,如果拒絕,則退出應用。