PermissionX 1.5发布,支持申请Android特殊权限啦

PermissionX 1.5版本新增对Android特殊权限的支持,包括悬浮窗、修改设置和管理外部存储。这个更新简化了特殊权限的申请流程,允许开发者使用统一的API处理这些权限。此外,PermissionX也将从jcenter迁移到Maven Central仓库。
摘要由CSDN通过智能技术生成

Hello大家早上好,说起PermissionX,其实我已经有段时间没有更新这个框架了。一是因为现在工作确实比较忙,没有过去那么多的闲暇时间来写开源项目,二是因为,PermissionX的主体功能已经相当稳定,并不需要频繁对其进行变更。

不过之前一直有朋友在反映,对于Android中的一些特殊权限申请,PermissionX并不支持。是的,PermissionX本质上只是对Android运行时权限API进行了一层封装,用于简化运行时权限申请的。而这些特殊权限并不属于Android运行时权限的一部分,所以PermissionX自然也是不支持的。

但是特殊权限却是我们这些开发者们可能经常要与之打交道的一部分,它们并不难写,但是每次去写都感觉很繁琐。因此经慎重考虑之后,我决定将几个比较常用的特殊权限纳入PermissionX的支持范围。那么本篇文章我们就来看一看,对于这几个常见的特殊权限,使用PermissionX和不使用PermissionX的写法有什么不同之处。

对于还从来没有了解过PermissionX的朋友们,可以到我的公众号主页->历史文章->权限系列,查看我写的关于PermissionX的所有文章,将可以帮助你很好地理解和使用这个框架。

/   什么是特殊权限?   /

事实上,Android的权限机制也是经历过长久的迭代的。在6.0系统之前,Google将权限机制设计的比较简单,你的应用程序需要用到什么权限,只需要在AndroidManifest.xml文件中声明一下就可以了。

但是从6.0系统开始,Android引入了运行时权限机制。Android将常用的权限大致归成了几类,一类是普通权限,一类是危险权限,一类是特殊权限。

普通权限指的是那些不会直接威胁到用户的安全和隐私的权限,这种权限和过去一样,只需要在AndroidManifest.xml文件中声明一下就可以了,不需要做任何特殊处理。

危险权限则表示那些可能会触及用户隐私或者对设备安全性造成影响的权限,如获取设备联系人信息、定位设备的地理位置等。这部分权限需要通过代码进行申请,并要用户手动同意才可获得授权。PermissionX库主要就是处理的这种权限的申请。

而特殊权限则更加少见,Google认为这种权限比危险权限还要敏感,因此不能仅仅让用户手动同意就可以获得授权,而是需要让用户到专门的设置页面去手动对某一个应用程序授权,该程序才能使用这个权限。

不过相比于危险权限,特殊权限没有非常固定的申请方式,每个特殊权限可能都要使用不同的写法才行,这也导致申请特殊权限比申请危险权限还要繁琐。

从1.5.0版本开始,PermissionX对最常用的几个特殊权限进行了支持。正如刚才所说,特殊权限没有固定的申请方式,因此PermissionX也是针对于这几个特殊权限一个一个去适配并支持的。如果你发现你需要申请的某个特殊权限还没有被PermissionX支持,也可以向我提出需求,我会考虑在接下来的版本中加入。

/   jcenter的现状   /

在过去,我们发布开源库通常都是发布到jcenter上的,但是相信大家现在都已经知道了,jcenter即将停止服务,具体可以参考我的这篇文章 浅谈JCenter即将被停止服务的事件

目前的jcenter处在一个半废弃的边缘,虽然还可以正常从jcenter下载开源库,但是已经不能再向jcenter发布新的开源库了。而在明年2月1号之后,下载服务也会被关停。

所以,以后要想再发布开源库我们只能选择发布到其他仓库,比如现在Google推荐我们使用Maven Central。

于是,从1.5.0版本开始,PermissionX也会将库

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值