Android 判断应用是否安装 并打开或下载应用
来源:互联网 发布:制作投票软件 编辑:程序博客网 时间:2024/05/17 09:15
在开发过程中,有时需要打开其他的应用(如调起支付宝支付),在打开其他应用前我们应该先去判断该应用是否已经安装,如果已经安装则直接打开该应用如果未安装则需要调起应用市场让用户去下载安装应用。下面是个人的一个工具类:
import android.app.Activity;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;import android.net.Uri;import java.util.ArrayList;import java.util.List;import static android.app.Activity.RESULT_OK;/** * Created by 49829 on 2017/9/25. */public class CheckAppInstalledUtil { /** * 判断 APP 是否安装 * @param context 活动对应的上下文对象 * @param packageName 需要检查的应用包名 * @return */ public static boolean isInstalled(Context context, String packageName) { final PackageManager packageManager = context.getPackageManager();//获取packagemanager List<PackageInfo> pInfo = packageManager.getInstalledPackages(0);//获取所有已安装程序的包信息 List<String> pName = new ArrayList<>();//用于存储所有已安装程序的包名 //从pinfo中将包名字逐一取出,压入pName list中 if (pInfo != null) { for (int i = 0; i < pInfo.size(); i++) { String pn = pInfo.get(i).packageName; pName.add(pn); } } return pName.contains(packageName);//判断pName中是否有目标程序的包名,有TRUE,没有FALSE } /** *打开或者去下载应用 * @param context 活动对应上下文对象 * @param packageName 需要打开的应用包名 */ public static void openApp(Activity context, String packageName) { if (isInstalled(context, packageName)) { //已安装,打开程序,需传入参数包名:packageName Intent i = new Intent(); ComponentName cn = new ComponentName(packageName, String.valueOf(context.getClass())); i.setComponent(cn); context.startActivityForResult(i, RESULT_OK); } else {//未安装,跳转至market下载该程序 Uri uri = Uri.parse("market://details?id=packageName");//id为包名 Intent it = new Intent(Intent.ACTION_VIEW, uri); context.startActivity(it); } }}
阅读全文
0 0
- Android 判断应用是否安装 并打开或下载应用
- 关于android 应用中安装另一个应用 打开另一个应用 判断另一个应用是否安装
- 手机浏览器下判断是否安装某app,并判断是否打开该应用
- web页面判断是否安装某app,并判断是否打开该应用
- 手机浏览器下判断是否安装某app,并判断是否打开该应用
- Scheme详解( web页面判断是否安装某app,并判断是否打开该应用)
- Android 判断应用是否安装
- Android中判断应用是否第一次打开
- Android中判断应用是否第一次打开
- Android判断应用或Activity是否存在
- Android判断应用或Activity是否存在
- Android判断应用或Activity是否存在
- Android判断应用或Activity是否存在
- Android判断应用或Activity是否存在
- HTML中判断手机是否安装某APP,跳转或下载该应用
- 判断应用是否安装
- 判断应用是否安装
- 判断是否已经安装android应用
- 冒泡排序
- invalid bitcode signature解决方案
- WS彩票游戏完整商业程序源码下载
- python用quad、dblquad实现一维二维积分范例
- Oracle用户安全及用户资源限制文件
- Android 判断应用是否安装 并打开或下载应用
- Web 通信 之 长连接、长轮询(long polling)
- 关于Xcode 9的一些坑
- 技术文章 | 基于阿里的Node全栈之路(一)部署Docker
- ride使用问题-找不到keyword
- serialVersionUID的作用
- 数据库练习题(2005-05-09 胜)
- Python numpy函数:logspace()创建等比数列数组
- 那些年犯下的bug