获取已装配的程序和APK文件的信息
获取已安装的程序和APK文件的信息
对于APK文件
对于已安装的程序
SDK1.6上应该是正确的啊,你在SDK是多少?
对于APK文件
PackageManager mPackageManager = getPackageManager(); PackageInfo p = mPackageManager.getPackageArchiveInfo(<file path>, 0); if (p != null) { ApplicationInfo appInfo = p.applicationInfo; String appname = mPackageManager.getApplicationLabel(appInfo) .toString(); String packageName = p.packageName; String versionName = p.versionName; Drawable icon = mPackageManager.getApplicationIcon(appInfo); }
对于已安装的程序
// get all installed application PackageManager mPackageManager = getPackageManager(); List<PackageInfo> packs = mPackageManager.getInstalledPackages(0); int size = packs.size(); for (int i = 0; i < size; i++) { PackageInfo p = packs.get(i); if (p.applicationInfo.sourceDir.startsWith("/system/app")) { // ignore system application continue; } // get application detail ApplicationInfo appInfo = p.applicationInfo; String appname = mPackageManager.getApplicationLabel(appInfo) .toString(); String packageName = p.packageName; String versionName = p.versionName; Drawable icon = mPackageManager.getApplicationIcon(appInfo); }
1 楼
tonyzzp
2011-12-01
mPackageManager.getApplicationLabel(appInfo)
mPackageManager.getApplicationIcon(appInfo);
这种对于没有安装的,apk文件是不行的。
没安装的apk文件,只能得到resId,不能得到值。
(比如label icon applicationname等,都只能得到resid,得不到值)
有其他什么办法吗?
mPackageManager.getApplicationIcon(appInfo);
这种对于没有安装的,apk文件是不行的。
没安装的apk文件,只能得到resId,不能得到值。
(比如label icon applicationname等,都只能得到resid,得不到值)
有其他什么办法吗?
2 楼
dai_lm
2011-12-01
tonyzzp 写道
mPackageManager.getApplicationLabel(appInfo)
mPackageManager.getApplicationIcon(appInfo);
这种对于没有安装的,apk文件是不行的。
没安装的apk文件,只能得到resId,不能得到值。
(比如label icon applicationname等,都只能得到resid,得不到值)
有其他什么办法吗?
mPackageManager.getApplicationIcon(appInfo);
这种对于没有安装的,apk文件是不行的。
没安装的apk文件,只能得到resId,不能得到值。
(比如label icon applicationname等,都只能得到resid,得不到值)
有其他什么办法吗?
SDK1.6上应该是正确的啊,你在SDK是多少?