获取未安装apk文件的图标
如题,一开始也不知到如何获取apk图标,后来在百度上找,多TMD的同一个内容(天下文章一大抄),而且还要通过反射机制,这太复杂。
我再用google去搜索,发现这么一段关键点:
// the secret are these two lines.... pi.applicationInfo.sourceDir =APKFilePath; pi.applicationInfo.publicSourceDir =APKFilePath;//
所以仿造去写自己的代码:
int colnumData = mCursor.getColumnIndexOrThrow(DownloadManager.COLUMN_LOCAL_URI);
Uri uri = Uri.parse(mCursor.getString(colnumData)+"");
String path = uri.getPath();
PackageInfo pi = pm.getPackageArchiveInfo(path, 0);
if(pi != null){
ApplicationInfo appInfo = pi.applicationInfo;
pi.applicationInfo.sourceDir = path;
pi.applicationInfo.publicSourceDir = path;
Drawable icon = pm.getApplicationIcon(appInfo);
iconView.setImageDrawable(icon);
}
万事ok,可以获取apk图标。
有一个网站比较好:http://stackoverflow.com/,此次的问题解决,灵感来源于此。
相关推荐
adb shell cd system/app rm *.apk21. 获取管理员权限: adb root22. 启动Activity: adb shell am start -n 包名/包名+类名。