使用三方框架
compile 'com.lovedise:permissiongen:0.0.6
//1.請(qǐng)求權(quán)限
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
PermissionGen.with(MainActivity.this)
.addRequestCode(100)
.permissions(
Manifest.permission.READ_CONTACTS,
Manifest.permission.RECEIVE_SMS,
Manifest.permission.WRITE_CONTACTS)
.request();
}
});
/**
* 授權(quán)成功,后處理的邏輯
*/
@PermissionSuccess(requestCode = 100)
public void doSomething() {
Toast.makeText(this, "Contact permission is granted", Toast.LENGTH_SHORT).show();
}
/**
* 授權(quán)失敗,后處理的邏輯
*/
@PermissionFail(requestCode = 100)
public void doFailSomething() {
Toast.makeText(this, "Contact permission is not granted", Toast.LENGTH_SHORT).show();
PermissionGen.with(MainActivity.this)
.addRequestCode(100)
.permissions(
Manifest.permission.READ_CONTACTS,
Manifest.permission.RECEIVE_SMS,
Manifest.permission.WRITE_CONTACTS)
.request();
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
PermissionGen.onRequestPermissionsResult(MainActivity.this, requestCode, permissions, grantResults);
}
需要在清單文件中先聲明好對(duì)應(yīng)的權(quán)限,READ_CONTACTS,RECEIVE_SMS,WRITE_CONTACTS