1. 程式人生 > >android 應用開啟以後,動態檢測並或者相機許可權。

android 應用開啟以後,動態檢測並或者相機許可權。


針對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);}
以上程式碼就是檢測相機許可權,如果未或者,則彈窗提示。如果允許則會開啟相關許可權,如果拒絕,則退出應用。