Android 判断应用是否安装
方法一
使用抛出异常的方式判断,通过包名获取app的信息,当app不存在时,会抛出NameNotFoundException
异常,我们通过对异常的捕获,从而判断是否安装了该应用,代码如下:
private boolean checkAppInstalled(Context context,String pkgName) {if (pkgName== null || pkgName.isEmpty()) {return false}PackageInfo packageInfo; try {packageInfo = context.getPackageManager().getPackageInfo(pkgName, 0);} catch (NameNotFoundException e) {packageInfo = null;e.printStackTrace();}if(packageInfo == null) {return false;} else {return true;}
}
方法二
获取已经安装应用的所有包名,然后通过对比包名,从而判断应用是否安装,代码如下:
private boolean checkAppInstalled( Context context, String pkgName) {if (pkgName== null || pkgName.isEmpty()) {return false}final PackageManager packageManager = context.getPackageManager();// 获取所有已安装程序的包信息List<PackageInfo> info = packageManager.getInstalledPackages(0);if(info == null || info.isEmpty())return false;for ( int i = 0; i < info.size(); i++ ) {if(pkgName.equals(info.get(i).packageName)) {return true;}}return false;
}
注意
以上的两种方法都可以判断手机中是否安装了某个应用,但还是通过测试发现使用方法一的时候反应速度会比较慢,因为抛出异常需要一定的时间,所以在判断手机中是否安装了某个应用,建议使用方法二。但是当手机中应用过多时,方法二的速度也会相应的变慢,但是在测试过程中整体的速度相对于方法一还是快一些。
Android 判断应用是否安装相关推荐
- android判断是否已经安装成功,android 判断应用程序是否已安装
1.判断是否安装 /* * check the app is installed */ private boolean isAppInstalled(Context context,String pa ...
- Android 判断手机是否安装QQ或者微信
//判断是否安装Qq public static boolean isQQClientAvailable(Context context) {final PackageManager packageM ...
- android 判断安装微信,Android开发中判断手机是否安装了QQ或者微信
下面一段代码给大家分享了android中判断手机是否安装了qq或者微信,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧 public static boolean isWeixinAv ...
- 一起Talk Android吧(第五百四十六回:如何判断手机是否安装GooglePlay)
文章目录 概念介绍 实现方法 通过包名 通过API 经验总结 各位看官们大家好,上一回中咱们说的例子是"如何实现流水动画",本章回中介绍的例子是" 如何判断手机是否安装G ...
- Android 开发判断用户是否安装微信和QQ并跳转过去
/*** 判断 用户是否安装微信客户端*/public static boolean isWeixinAvilible(Context context) {final PackageManager p ...
- Android判断应用是否拥有某种权限
Android判断应用是否拥有某种权限 最近发现很多很多分原生Android系统会修改某些权限,甚至还有可能在安装过程中从APP的包中可能删除某些权限,导致APP无法正常运行.所以我们在使用某些特殊权 ...
- Android中对已安装应用的管理实现
获取.管理手机中已安装的所有应用信息 1.创建应用的实体类AppInfo,属性有应用的名称.包名.图标.第一次安装时间和版本名称 public class AppInfo {private Strin ...
- html5安卓机判断刘海屏,Android判断是否为刘海屏
主要总结主流品牌小米.华为.oppo.vivo的刘海屏判断.在某些特殊页面需要适配刘海屏时,可以用以下方法判断. 或者判断屏幕比例是否大于2. /** * 小米刘海屏判断. */ public sta ...
- Android实现APK智能安装且安装后自启动,亲测有用!
一.智能安装 (一)什么是智能安装? 最近因为公司需求需要实现智能安装,apk从服务器上下载后,自动打开安装,安装完后自己打开,难了我好长时间才实现的,记录一下. 首先实现有两种方式: 静默安装: 在 ...
最新文章
- R语言KMeans聚类模型示例
- 刚安装的python如何使用-Python requests的安装与简单运用
- 学习笔记Hadoop(十二)—— Hadoop基础操作(4)—— YARN资源管理与调度策略
- python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
- html js脚本限制 正则,简单谈谈JS中的正则表达式
- Linux 设备管理和进程管理
- java输入正确的信息_判断用户输入的信息是否正确
- 在中国,真正达到月收入1万以上的有多少
- c语言小数表达式运算课程设计,数据结构课程设计表达式计算.doc
- python3+arcface2.0 离线人脸识别 demo
- 什么是GaussDB
- mysql login_HOW to login MYSQL, Help, and Select Database
- Visual Studio 2017 配置AnkhSVN
- SD卡--摄像头中扩容卡原理及检测机制
- 杏子语录(2019年07月)
- 卷积神经网路之感受野(receptive field)的理解
- ChatGPT 如何获取API Key
- 计算机硬件性能测试过程,鲁大师怎么检测电脑硬件性能 鲁大师测试硬件方法...
- pynq 环境搭建_PYNQ系列学习(一)——Pynq开发环境配置
- 详解冬奥冠军背后的AI黑科技