android 權(quán)限總結(jié) 以及權(quán)限工具類介紹
- 在android 6.0以前 開(kāi)發(fā)者想要什么權(quán)限只需要在AndManifest文件中聲明即可,在6.0以后如果用戶申請(qǐng)了危險(xiǎn)權(quán)限,那么就需要通過(guò)彈框的形式申請(qǐng),
6.0以后的危險(xiǎn)權(quán)限有如下:
adb shell pm list permissions -d -g
這樣可以列出危險(xiǎn)權(quán)限
6.0 涉及到的權(quán)限的函數(shù)有如下
ActivityCompt.requestPermissions(String[] permissions, int requestCode);
onRequestPermissionsResult
ActivityCompat.shouldShowRequestPermissionRationale
這四個(gè)方法 (最后一個(gè)就是是否需要顯示解釋這個(gè)權(quán)限的彈框)
一般步驟就是 先check->返回false->request->在result中進(jìn)行處理是否獲得權(quán)限
如果代碼中 需要用到危險(xiǎn)權(quán)限的操作就應(yīng)該有如下操作
針對(duì)這個(gè) 我寫了一個(gè)庫(kù)
調(diào)用方法是
PermissionUtils.requestPermissions(this, mRequiredPermissions, new PermissionUtils.GetPermissionListener() {
@Override
public void onAllPermissionsGranted() {
mPermissionsGranted = true;
}
@Override
public void onPermissionsDenied(List<String> deniedPermissions) {
mPermissionsGranted = false;
}
});
就這樣即可。
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
compile 'com.github.bolevw:Utils:1.0.0'
}
git地址 歡迎star