当前位置:   article > 正文

android 获取已安装列表权限,Android 如何完整的获取到用户已安装应用列表

手机获取已安装列表权限

接到产品经理的预研需求,说希望获取用户已安装应用列表。这个问题应该不难,只要是要把相关的知识点整理和验证一下。

对于获取用户已安装应用列表,我个人是很熟悉的,因为我的华为手机上,手机管家天天会在通知栏弹出”xxx应用尝试获取用户已安装应用列表被禁止”。所以,很明显,跟权限是有关系的。于是,我尝试去查找到底是manifest清单中的哪一个use-permission引起。结果,找了很久,翻了很久,并没有哪个权限对已安装的应用列表负责。

但奇怪的是,我的手机上几乎全部的软件都声明了这个权限。于是,尝试去求助其他组员,咨询了几个,不少人一脸懵逼的表示这是个什么玩意。在他们的手机上压根就没有见过这个东西。

在写demo验证的过程中,发现非常简单的一个demo,居然也声明使用了该权限。 一开始怀疑,难道是检测到了相关代码自动申请了权限?发现全部注释后还是会声明。 后来,将清单文件中的唯一的访问Internet权限去掉,这样才正常。

所以,得出了一个结论就是,国内部分厂商比如华为、oppo,他们将”获取用户已安装应用列表”的权限暴露给了用户,让用户可以自由决定允许或者禁止应用访问该信息。同时,这个权限类似于附加的默认权限,一旦app声明了任何权限,那么”获取用户已安装应用列表”的权限也会被附加进来。但这个权限也不是太敏感,所以对于用户是无感知的。这里的无感知指的是不会在应用中去主动让我们弹窗申请权限,手机管家弹出的通知不算。

好吧,说了这么多,看一下过程中的3种方案。

方案1

private void getAppList() {

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/609946
推荐阅读
相关标签
  

闽ICP备14008679号