Android位置权限拒绝多次后,Android M中权限被拒绝时该如何处理

M的开发者预览版2现在包含了一个运行时权限的新方法:Activity.shouldShowRequestPermissionRationale()。

它告诉你的app在实际显示权限对话框之前是否显示一个对正在请求权限的解释。

在app第一次安装的时候。这个方法会返回false,因此你可以直接请求任何需要的权限。如果用户以前拒绝了一个请求,这个方法将返回true。那样的话你应该考虑在再次触发权限对话框之前显示一个解释请求用途之类的信息。你应该仅在权限本身意思不明了的情况下才做这件事情。

最终,当app完全没有机会被授权的时候,调用shouldShowRequestPermissionRationale() 则返回false。这可能是几个原因导致的,比如用户在权限对话框中选择了"不再显示”。结果为false意味着额外显示任意的解释都是徒劳的。

请注意,bug。

在M 开发者预览版2上Fragment.shouldShowRequestPermissionRationale() 总是返回false。这个bug会在今后版本修复。与此同时你可以在Fragments 使用getActivity().shouldShowRequestPermissionRationale()。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值