国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現整理PackageManager獲取所有安裝程序信息

2020-04-11 10:57:57
字體:
來源:轉載
供稿:網友

本文實例講述了Android實現整理PackageManager獲取所有安裝程序信息的方法。分享給大家供大家參考,具體如下:

List<PackageInfo> packs = getPackageManager().getInstalledPackages(0);//獲取安裝程序的包名for (int i = 0; i < packs.size(); i++) { PackageInfo p = packs.get(i);//某個包信息 //打印:版本好,版本名,包名.... Log.i("", "-------" + p.versionCode + "-------" + p.versionName + "--------"   + p.packageName + "-------" + p.applicationInfo);}

versionCode, versionName 的值來源AndroidManifest.xml文件

<manifest xmlns:android="http://schemas.android.com/apk/res/android"   package="com.testapk"   android:versionCode="2" // p.versionCode    android:versionName="Version1" // p.versionName>

在代碼中獲取當前應用程序的versionCode,versionName

int versionCode = 0;try {  versionCode = getPackageManager().getPackageInfo(this.getPackageName(), 0).versionCode;} catch (NameNotFoundException e) {  e.printStackTrace();}

代碼:

// 通過檢測包名,判斷APK是否安裝private boolean checkPackageExist(boolean getSysPackages) { boolean packageExist = false; int versionCode = 0; try {  versionCode = getPackageManager().getPackageInfo(this.getPackageName(), 0).versionCode; } catch (NameNotFoundException e) {  e.printStackTrace(); } Log.i("", "-------" + this.getPackageName() + "-------" + versionCode);//獲取當前包名 List<PackageInfo> packs = getPackageManager().getInstalledPackages(0); for (int i = 0; i < packs.size(); i++) {  PackageInfo p = packs.get(i);  Log.i("", "-------" + p.versionCode + "-------" + p.versionName + "--------"    + p.packageName + "-------" + p.applicationInfo);  if ((!getSysPackages) && (p.versionName == null)) {  continue;  }  if (p.packageName.equalsIgnoreCase(PACKAGENAME)) {  packageExist = true;  break;  } } return packageExist; } //安裝APK private void installApk() { if (checkFileExist(fileRoot + fileName)) {  Intent intent = new Intent();  intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  intent.setAction(android.content.Intent.ACTION_VIEW);  String type = "application/vnd.android.package-archive";  intent.setDataAndType(Uri.parse("file://" + fileRoot + fileName),   type);  startActivity(intent); } else {  downloadapk(); }}

通過以上代碼,再加上一些網路下載的代碼,就可以做一個簡體的應用市場了。

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 施甸县| 巧家县| 武定县| 富川| 达拉特旗| 洛阳市| 洛浦县| 汕尾市| 海安县| 荣成市| 乡城县| 象山县| 锦州市| 莱阳市| 神木县| 武川县| 兰溪市| 营口市| 北碚区| 乐东| 兴义市| 阳谷县| 大理市| 兴和县| 武定县| 阿图什市| 永平县| 察隅县| 白山市| 湖南省| 云南省| 出国| 北安市| 定南县| 宣武区| 宜良县| 日照市| 黎城县| 信宜市| 通州市| 资源县|