Android APP 检测安装打开 APK 三步操作
本文介绍 Android APP 检测、安装、打开 APK,三步操作,分别是:检查 APP 是否已经安装,安装已经下载好的 APK,打开已经安装的 APK。
1、检查 APP 是否已经安装
/*** 检查 APP 是否已经安装* @param context* @param packagename 需求检查的 APP 包名* @return 没有安装返回 false,已经安装返回 true*/private boolean isAppInstalled(Context context, String packagename) {PackageInfo packageInfo;try {packageInfo = context.getPackageManager().getPackageInfo(packagename, 0);} catch (NameNotFoundException e) {packageInfo = null;e.printStackTrace();}if(packageInfo == null) {//System.out.println("没有安装");return false;} else {//System.out.println("已经安装");return true;}}
2、安装已经下载好的 APK
/*** 安装 APK* @param info*/private void install(String apkname) {try {Intent intent = new Intent(Intent.ACTION_VIEW);String url = Environment.getExternalStorageDirectory().getAbsolutePath() + "/" + Environment.DIRECTORY_DOWNLOADS + apkname);File file = new File(url);if(file.exists()) {intent.setDataAndType(Uri.fromFile(new File(url)), "application/vnd.android.package-archive");context.startActivity(intent);} else {// 安装包已经删除请重新下载}} catch (Exception e) {// TODO: handle exception}}
3、打开已经安装的 APK
/*** 打开已经安装好的 APK* @param url 文件路径*/private void openApk(String url) {try {PackageManager manager = context.getPackageManager();// 这里的是你下载好的文件路径PackageInfo info = manager.getPackageArchiveInfo(url, PackageManager.GET_ACTIVITIES);if (info != null) {Intent intent = manager.getLaunchIntentForPackage(info.applicationInfo.packageName);context.startActivity(intent);}} catch (Exception e) {// TODO: handle exception}}
(完)