Android 判断是否安装此应用(解决Android12和Android11获取不到已安装的所有应用列表)
背景
没个应用都有第三方的登陆或者分享,但是有一种情况就是这个手机没有安装这个软件我们要动态的现实第三方的登陆或者分享的图标。
详解
我们都是用下面的方式判断,这里就拿QQ和微信举例但是⚠️在安卓11和安卓12的时候这样就失效了(标准为 targetSdk 30在30以下都没有问题)因为权限收紧我们需要在清单文件里面添加queries
整体代码
清单文件添加(安卓11或者12可以添加11以下可以加可不加)这个方式就是因为Android10以上权限收紧需要在清单文件里面添加白名单吧!
⚠️注意结构
<!-- 适配安卓12&11获取当前已安装的所有应用列表--><queries><intent><action android:name="android.intent.action.MAIN" /></intent></queries>
代码获取已安装的所有应用列表判断逻辑
public static boolean isInstallQQWEICHAT(Context context) {boolean qq = isAppInstalled(context, "com.tencent.mobileqq");boolean wechat = isAppInstalled(context, "com.tencent.mm");return qq || wechat;}public static boolean isAppInstalled( Context ctx, String PackageName ) {try {PackageManager packageManager = app.contex.getPackageManager();PackageInfo info = packageManager.getPackageInfo(PackageName, 0);if (info!=null){return true;}} catch (Exception e) {/// loge(e);}return false;}
这就算
Android 判断是否安装此应用(解决Android12和Android11获取不到已安装的所有应用列表)相关推荐
- android 获取已安装列表权限,Android 如何完整的获取到用户已安装应用列表
接到产品经理的预研需求,说希望获取用户已安装应用列表.这个问题应该不难,只要是要把相关的知识点整理和验证一下. 对于获取用户已安装应用列表,我个人是很熟悉的,因为我的华为手机上,手机管家天天会在通知栏 ...
- android pak文件_Android 获取手机中已安装apk文件信息
通过PackageManager可以获取手机端已安装的apk文件的信息,具体代码如下 PackageManager packageManager = this.getPackageManager(); ...
- android插件化-获取apkplug框架已安装插件-03
上一篇文章成功的将apkplug框架嵌入了应用中而且启动 链接http://www.apkplug.com/blog/?post=10 这一篇文章实现怎样获取全部已安装插件 一 获取框架的System ...
- 如何获取IOS手机已安装app的bundleid
获取IOS手机已安装app的bundleid 如果使用oc私有api获取不到ios11以上手机的app bundleid 那么可以使用安装其他工具来获取 那就是使用 libimobiledevice ...
- 获取手机上已安装应用,游戏的安装包
有些时候我们手机上安装好用的app,但后来找不到下载链接了,又想分享给好朋友,就可以用此应用将手机上安装的app安装包文件(.apk)保存到手机本地,然后用其他文件分享工具将安装包分享给好友安装,使用 ...
- 解决CAD2010卸载后重新安装时显示“已安装”问题
1.开始>运行>输入"regedit",打开注册表,找到下面的注册表路径: HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R ...
- 网页中如何获取客户端系统已安装的所有字体?
如何获取系统字体? 1.首先在需要获取系统字体的网页<body>后加入以下代码: <DIV style="LEFT: 0px; POSITION: absolute; TO ...
- python如何安装各类包_如何在Python中列出所有已安装的包及其版本?
help('modules')应该为你做. 在伊普顿:In [1]: import #import press-TAB Display all 631 possibilities? (y or n) ...
- jupyternotebook无法使用anaconda环境 无法使用已安装的包 解决办法
文章目录 jupyternotebook无法使用anaconda环境 无法使用已安装的包 解决办法 jupyternotebook无法使用anaconda环境 无法使用已安装的包 解决办法2 如何解决 ...
最新文章
- Android 功能防抖 的实现
- UIWebView、WKWebView使用详解及性能分析
- 数据管理的智能趋势(2):如何实现高效的数据管理
- XHTML学习笔记 Part2:核心元素
- 逆向工程核心原理读书笔记-API钩取之隐藏进程(一)
- 这就是80后的我们!
- webform数据导出
- java高分面试指南:redis怎么保证高可用
- es查询所欲_Elasticsearch基本查询总结
- MySQL 当记录不存在时insert,当记录存在时update(ON DUPLICATE KEY UPDATE, REPLACE语句)...
- 小米盗图迪丽热巴?公关经理:占位示意 不存在故意盗图!
- 获取activemq 队列所有数据_ActiveMQ的应用
- swift之Generics
- linux 删除桌面环境变量,linux下export命令添加、删除环境变量(转载)
- 从主流安全开发框架看软件供应链安全保障的落地
- DiskImage磁盘镜像工具下载使用手册
- 蒸汽流量计算软件_补偿型涡街流量计
- MATLAB读取Execl数据并绘制曲线图
- SQL Server Select Top语句
- 低温工作笔记本计算机,电脑低温自动关机
热门文章
- 微信小程序获取顶部状态栏和胶囊的高度
- 地砖中间高四边低_地砖与墙砖之间的缝太大了,该怎么办?
- WindowLess RichEdit 实现QQ聊天窗口的气泡效果,设计思路和方法。
- 定义QQ气泡diy接口
- OpenStack 云平台流量监控插件tap-as-a-service(Taas)安装步骤(OpenStack queens版本,非devstack)
- IDEA打包或者build时报错Failure to find XXX in http://maven.aliyun.com/nexus
- xp系统mtp驱动程序_在XP中回滚设备驱动程序
- 一针见血评互联网五大巨头:腾讯贪、阿里全、百度狠、小米直、奇虎360难
- cascade自己训练级联分类器(人脸检测)
- JDK自带的jvisualvm在安装插件时报代无法连接Java VisualVM插件中心