简化Activity权限申请的方法

网友投稿 560 2022-10-30

简化Activity权限申请的方法

简化Activity权限申请的方法

说明:

Android6.0以后,系统对权限的控制越来越严格,Google推出运行时权限,只有在需要权限的时候,才通知用户授权,而不是在安装的时候。

这可能会造成每个需要授权的地方都要进行处理,通常处理分为两部分,请求权限和处理授权结果。这将会是一项非常庞大的工作量。

能不能简化使用的方法呢?

本文介绍了两种简化方法,一种是官方的,一种是自己的处理。

方案1:官方 ​​Activity Result API​​

Google公司更新了开发库,使用 ​​Activity Result API​​接口可以简化操作

例子中给处理使用方法,需要两句话进行请求。功能比较完备,标准。大致是这样

方案2:使用继承类的方法

这个方法是定义一个回调接口,不关心哪些授权,哪些不授权,全部授权才算成功。只需要调用一句话

接口定义如下:

怎么实现呢?

就是创建一个基类,把权限请求和响应放到基类中处理,结果回调给子类的调用函数。

比如我们的页面是这样的

public class MainActivity extends PermissionBaseActivity {

基类这样定义

处理权限请求结果

总结:

代码的优化的处理的方法有很多种,有些是官方的,有些是野路子,能处理问题就好了。后面介绍下,对于在fragment请求权限的处理,因为官方已经不支持fragment的onRequestPermissionsResult方法了。

参考:

​​Fragment  |  Android 开发者  |  Android Developers (google-)​​

关于:

编者:李国帅

时间:2022-6-4

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【LeetCode 83】删除排序链表中的重复元素 VS. 【剑指offer】删除链表中重复元素
下一篇:基于vue-cli搭建的移动端开发框架模板
相关文章

 发表评论

暂时没有评论,来抢沙发吧~