許可權分為3類,一組是normal許可權,無需申請,另一組是dangerous,需申請,然後是特殊許可權,需申請。
先看下normal許可權列表:
再看下dangerous許可權列表:
危險許可權實際上才是執行時許可權主要處理的物件,這些許可權可能引起隱私問題或者影響其他程式執行。android中的危險許可權可以歸為以下幾個分組:
calendar
camera
contacts
location
microphone
phone
sensors
smsstorage
各個許可權分組與其具體的許可權,可以參考下圖:
想要不支援執行時許可權機制很簡單,只需要將targetsdkversion
設定低於23就可以了,意思是告訴系統,我還沒有完全在api 23(6.0)上完全搞定,不要給我啟動新的特性。
特殊許可權:
就是一些特別敏感的許可權,在android系統中,主要由兩個
關於上面兩個特殊許可權的授權,做法是使用startactivityforresult
啟動授權介面來完成。
請求system_alert_window
private static final int request_code = 1;
private void requestalertwindowpermission()
@override
protected void onactivityresult(int requestcode, int resultcode, intent data) }}
上述**需要注意的是
private static final int request_code_write_settings = 2;
private void requestwritesettings()
@override
protected void onactivityresult(int requestcode, int resultcode, intent data) }}
上述**需要注意的是
注意:關於這兩個特殊許可權,一般不建議應用申請。
Android 6 0許可權管理
android 6.0在我們原有的androidmanifest.xml宣告許可權的基礎上,又新增了執行時許可權動態檢測,以下許可權都需要在執行時判斷 身體感測器 日曆攝像頭 通訊錄地理位置 麥克風 簡訊儲存空間 if contextcompat.checkselfpermission this,m...
Android6 0許可權適配
android6.0許可權適配 1.複寫activity onrequestpermissionsresult override public void onrequestpermissionsresult int requestcode,string permissions,int grantre...
Android 6 0 許可權管理
android 6.0 之後許可權需要動態的獲取,否則是無法正常使用某些功能的。主布局檔案 主要是來模擬動態的獲取許可權,因此布局檔案中無其他多餘內容,其中textview也可以省略。使用3.1 在全域性中 宣告 private static final int request code camer...