如何以编程方式从 sdcard/storage .apk 文件中获取 appicon?
Posted
技术标签:
【中文标题】如何以编程方式从 sdcard/storage .apk 文件中获取 appicon?【英文标题】:How to get appicon programmatically from sdcard/storage .apk file? 【发布时间】:2019-01-26 05:25:12 【问题描述】:使用ApplicationInfo
我已经尝试过了,它运行良好,但它只显示已安装应用程序的应用程序图标。但我想以编程方式从文件路径(.apk 文件)中获取 appicon。
Drawable icon=applicationInfo.loadIcon(getPackageManager());
我想从 apk 文件中获取 appicon。此文件已存储在存储中。
那么有没有办法从 .apk 文件中获取图标/拇指,以便以编程方式显示 appicon?
【问题讨论】:
您到底想做什么?你想显示你的应用程序的图标或其他应用程序或 sd 卡中的 apk 图标吗?? 是的 @sourabhkaushik 我只想从 .apk 文件路径中以编程方式显示 appicon @pskink 错了 @VladyslavMatviienko 是的,很高兴知道... 【参考方案1】:您可以从 APK 文件中获取该信息:
String apkPath = "path/to/apk/file.apk";
PackageManager packageManager = context.getPackageManager();
PackageInfo packageInfo = packageManager.getPackageArchiveInfo(apkPath, 0);
// you need to set this variables manually for some reason to get icon from APK file that has not been installed
packageInfo.applicationInfo.sourceDir = apkPath;
packageInfo.applicationInfo.publicSourceDir = apkPath;
Drawable icon = packageInfo.applicationInfo.loadIcon(packageManager);
【讨论】:
以上是关于如何以编程方式从 sdcard/storage .apk 文件中获取 appicon?的主要内容,如果未能解决你的问题,请参考以下文章
Android内外存储 易混淆点剖析(/mnt/sdcard/storage/sdcard0/storage/emulated/0等区别)
如何以编程方式从 UIViewController 转到 UITableViewController
如何以编程方式从 UINavigationController (storyboard) 切换到 UIViewController