简化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.cn)??

关于:

编者:李国帅

?

时间:2022-6-4

不能接受失败,也意味太想去成功了,从心理学上解释,

简化Activity权限申请的方法

相关文章:

你感兴趣的文章:

标签云: