6.0+运行时权限申请

转载请注明出处:
http://blog.youkuaiyun.com/user11223344abc?viewmode=contents
出自【蛟-blog】

0.介绍

运行时权限申请,只针对6.0+的手机。也就是说6.0以下的手机是不会有这要求的。

当申请发出之后会出现下图:

本文就以打电话为例。

1.一点点的考虑

  • 啥时候申请
  • 申请之后被拒绝怎么办
  • 权限检测

下面直接贴出API,有了API,相信大家知道怎么做了。

2.API:

  • 首先,你需要按照以前的方式在清单文件内添加你需要的权限,否则,接下来的步骤,你将会找不到这个权限的常量
  <uses-permission android:name="android.permission.CALL_PHONE" />
  • 检测
 if (ContextCompat.checkSelfPermission(getActivity(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
            ...
        }}
  • 申请
  ActivityCompat.requestPermissions(getActivity(),
                    new String[]{Manifest.permission.CALL_PHONE},
                    10086);
  • Activity/Fragment内的回调(非必要处理)
    @Override
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        if(requestCode == 10086){
            //...do something
        }
    }

3.关于扩展:

一般来说,像权限申请这块,是可以封装到项目基类里的,还有一些比较高级的封装,可以脱离控件的限制在Adapter等其他地方直接请求权限,后面,我再把相关封装的链接补在此处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值