您的位置:首页 > 其它

获取未安装的APK图标

2015-08-04 07:09 316 查看

获取APK图标

通常读取APK的图标可以用,PackageManager里面的getApplicationIcon(ApplicationInfo)来得到一个drawable。但实际使用的时候经常只能得到一个默认的图标,根本不是APK的图标。
</pre><pre name="code" class="html"><pre name="code" class="java">    /*
* 采用了新的办法获取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,
PackageManager.GET_ACTIVITIES);
if (info != null) {
ApplicationInfo appInfo = info.applicationInfo;
appInfo.sourceDir = apkPath;
appInfo.publicSourceDir = apkPath;
try {
return appInfo.loadIcon(pm);
} catch (OutOfMemoryError e) {
Log.e("ApkIconLoader", e.toString());
}
}
return null;
}



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: