在申请权限时,即使是运行时权限,也要在Android.Manifest.xml中声明。
例如申请电话权限,需要在该文件中声明
检查权限是否已经授予,如授予,直接进行业务处理
if(ContextCompat.checkSelfPermission(MainActivity.this,
Manifest.permission.你的权限) ==
PackageManager.PERMISSION_GRANTED) //权限已经授予
{
//业务处理...
}
else{ //权限没授予,申请权限
ActivityCompat.requestPermissions(MainActivity.this,
new String[]{Manifest.permission.你想申请的权限}, 1);
}
对申请权限结果进行回调
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED)//权限已经授予
//业务处理
}
暑期编程PK赛
得CSDN机械键盘等精美礼品!


