周末闲来无事,把Android的基础知识拿出来复习复习,今天主题是《获取未安装的APK图标、版本、包名、名称、是否安装、跳转安装、打开》
一、获取APK图标
通常读取APK的图标可以用,PackageManager里面的getApplicationIcon(ApplicationInfo)来得到一个drawable。但实际使用的时候经常只能得到一个默认的图标,根本不是APK的图标。
参考小米开源文件管理器,结合实践,代码如下:
/*
* 采用了新的办法获取APK图标,之前的失败是因为android中存在的一个BUG,通过
* appInfo.publicSourceDir = apkPath;来修正这个问题,详情参见:
* http://code.google.com/p/android/issues/detail?id=9151
*/
public static Drawable getApkIcon(Context context, String apkPath) {
PackageManager pm = context.getPackageManager();
PackageInfo info = pm.getPackageArchiveInfo(apkPath,