Android 判断应用是否安装

news/2025/1/12 9:56:09/

方法一

使用抛出异常的方式判断,通过包名获取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;
}

注意

以上的两种方法都可以判断手机中是否安装了某个应用,但还是通过测试发现使用方法一的时候反应速度会比较慢,因为抛出异常需要一定的时间,所以在判断手机中是否安装了某个应用,建议使用方法二。但是当手机中应用过多时,方法二的速度也会相应的变慢,但是在测试过程中整体的速度相对于方法一还是快一些。


http://www.ppmy.cn/news/677743.html

相关文章

广东IPTV 第三方APP应用安装(超简单)

1、需要安装的APP软件先行下载到U盘或microSD卡&#xff1b; 2、插入盒子打开&#xff0c;安装并打开文件管理软件&#xff0c;把APP复制或移动到盒子的系统卡上&#xff1b; 3、直接双击安装APP即可。 注意APP不能安装太多&#xff0c;盒子内存空间一般不大,很容易爆满&…

我们发现您的应用在用户同意隐私政策前申请获取用户个人信息(IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据)

一、需求 解决应用上架问题 过度获取用户信息我们发现您的应用在用户同意隐私政策前申请获取用户个人信息&#xff08;IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据&#xff09; 自"滴滴"事件后&#xff0c;为避免该类事件&#xff0c;App的上架变的严格起来。上…

使用adb工具打开TCL电视的第三方应用安装权限

使用adb工具打开TCL电视的第三方应用安装权限 前言安装adb工具打开电视的adb调试开关abd工具打开电视权限 前言 新买的TCL电视往往默认是无法安装第三方应用的&#xff0c;即使用U盘安装了第三方应用&#xff0c;应用也没有升级权限。另外&#xff0c;也无法通过沙发管家等应用…

Thinkphp6.0 多应用安装说明

附 如果不能下载 请到这里来 传送门 我先把框架丢上来吧 一个是刚下来没有扩展的,也就是单应用的 单应用.zip 下边这个是多应用的,安装好了扩展的 多应用.zip 接下来说说我是怎么搞的 按着文档的说明执行命令(记得安装 composer) composer create-project to…

华为手机应用安装错误码分析汇总

华为手机应用安装错误码分析汇总 在应用开发过程中经常会遇到应用安装失败的问题&#xff0c;今天就给大家分析一下一些华为手机上主要的安装错误码&#xff0c;帮助大家快速的解决应用安装问题。 1. 该安装包无效或不完整、该安装包与操作系统不兼容&#xff08;错误码&am…

Android - 应用安装、卸载、覆盖安装的广播及不生效原因解析

转载请注明出处&#xff1a;https://blog.csdn.net/mythmayor/article/details/80653621 一、应用安装、卸载、覆盖安装的广播 最近想优化一下项目&#xff0c;因为应用是有自动更新的功能的&#xff0c;想在覆盖安装的时候做一些自己的逻辑。于是使用了广播来完成这个需求。…

Mac 查找应用安装路径

记录一下&#xff0c;如何快速找到mac上安装应用的安装环境。 查找Java安装路径查找应用安装路径 一、查找Java安装路径 最近重新安装Java JDK&#xff0c;发现找不到Java安装路径&#xff0c;后来发现以下命令&#xff1a; // 查找java安装路径 /usr/libexec/java_home -V…

Android 8.1 应用安装过程总结

整体介绍 一个 Android 应用安装到手机上大致分为四种情形&#xff1a; 系统应用&#xff0c;在设备每次启动时完成安装通过 adb install 命令安装应用市场安装&#xff0c;封装安装过程&#xff08;略&#xff09;第三方应用安装或双击安装包&#xff0c;会启动系统应用引导…