想更新 App?先要个权限吧!!!

作者 : 开心源码 本文共1361个字,预计阅读时间需要4分钟 发布时间: 2022-05-12 共163人阅读

前言

手边有个 App 产品,targetSdkVersion 更新到 26 了,一段时间之后发现应用发布更新时,更新率比之前低了不少。

排查后发现,很大的一部分起因在于,Android O 添加了对具体 App 能否允许安装 App 的开关检查。此开关默认为关闭状态,需要客户主动开启,允许你的 App 安装应用,否则你无权安装应用。当然我们的更新,也属于安装应用的范畴。

安装权限

什么是安装未知应用权限

起初其实不是很在意这个点,由于在触发安装的时候,系统会自动跳转到 App 设置页面,要求客户开启此权限。

这个在功能上,本身已经是自成闭环的,预计也是为了避免没有适配的 App,触发安装的时候直接崩溃了。

假如细心观察过少量功能比较细腻的产品,你会发现其它们在安装前都是有一次引导的。相似 Android 6.0 中动态权限申请,少量打磨的很好的 App,会提前告诉客户,“我们由于 Xxx 起因,会使用到 x、y、z 权限,需要您的受权”等,这样一个比较友好的产品引导,让客户无抵触的去根据弹窗开启权限,而不是将受权框生硬的弹出来。

添加一层引导,不仅仅是为了功能实现,而是为了追求更好的客户体验,同时也添加成功率。

安装未知应用

在 Android O 之前,设置中的安全选项里,是有一个 “Allow unknown sources” 的设置,其目的就是为了方便安装来自 Google Play 之外的 App。

而在 Android O 之后,此设置被完全拿掉了,替换方案就是针对 App,添加了一个“安装未知应用”的权限。

既然要做适配,我们就需要考虑到,是否拿到当前 App 能否开启此权限,以及假如没有开启,是否自动跳转到权限开关的页面。接下来我们具体看看适配的过程,其实很简单。

适配“安装位置应用”

1.?添加权限

要使用此功能,首先要求 targetSdkVersion 为 26 或者者更高,并且显示公告 REQUEST_INSTALL_PACKAGES 权限。

<uses-permission?android:name=”android.permission.REQUEST_INSTALL_PACKAGES”?/>

2.?判断能否开启权限

在 PackageManager 中,新添加了一个?canRequestPackageInstalls()?方法,它会返回一个 Boolean 值,直接表示当前能否具开启此权限。

3.?打开开启权限页面

可以通过?Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES?来启动一个 Activity,打开开启权限页面。

privatefunstartInstallSwitchPage(){

valintent?=?Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES)

startActivityForResult(intent,602)

}

到这里该有的就都有了,剩下的就看如何在产品形态上包装一下,在安装前做一次检查,假如没有此权限,弹出一个精美的弹窗说明情况,引导客户去开启此权限后继续安装。

总结

产品体验是在功能实现的基础之上的,这就是为什么说有时候很多技术问题都是可以用产品方案来规避的。同样一个技术功能,通过不同的产品形态体现出来,可能就会得到不同的效果。

希望今天的文章你能喜欢。

喜欢的话请素质2连:点赞+关注

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 想更新 App?先要个权限吧!!!

发表回复