Android permission

android.Manifest包含了Android的所有权限。设置权限需要在:

1, AndroidManifest.xml中添加<uses-permission>

2,有些app可以在app info控制某些权限(如sd卡的读写权限)的开启,若没开启需要弹出提示框开启权限。

    > 判断权限是否允许

     类android.support.v4.content.PermissionChecker封装了判断权限状态的一些接口,如判断读权限是否开启,则可用如下方法:

     int status = PermissionChecker.checkSelfPermission(context, Manifest.
     boolean isGranted = (status == PermissionChecker.PERMISSION_GRANTED);

    > 若权限未允许,则弹出提示框

        ActivityCompat.requestPermissions(activity, permissions, requestCode);

    > 在所有permissions提示框选择完以后,监听的允许/拒绝结果,需要复写Activity的onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)方法,grantResults即为监听的结果。

    > 如果grantResults含子项结果不为PermissionChecker.PERMISSION_GRANTED,则可跳转到app info直接控制权限的开关。跳转到app info有2种方式:一、根据action:包管理器PackageManager.queryIntentActivities可判断该app是否存在,存在则可直接将action封装成Intent启动;二、根据包名:Intent(String action, Uri uri),uri = Uri.parse("package:" + context.getPackageName());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值