这个功能在华为手机上测试了,其他机型不确定是不是可以啊。核心的工具类贴出来,列表展示相关的自行编写。
public class ApkInfoManager {
private static ApkInfoManager appInfoManager;
private ApkInfoManager() {
}
public static ApkInfoManager getInstance() {
if (appInfoManager == null) {
appInfoManager = new ApkInfoManager();
}
return appInfoManager;
}
public List<ApkInfoEntity> getAppInfoList(Context context) {
List<ResolveInfo> resolveInfos = initApp(context);
ArrayList<ApkInfoEntity> appInfoEntities = new ArrayList<>();
if (resolveInfos != null && resolveInfos.size() > 0) {
for (ResolveInfo resolveInfo : resolveInfos) {
ApkInfoEntity appInfoEntity = new ApkInfoEntity();
appInfoEntity.setAppName(resolveInfo.loadLabel(context.getPackageManager()).toString());
appInfoEntity.setIconDrawable(resolveInfo.loadIcon(context.getPackageManager()));
appInfoEntity.setPageName(resolveInfo.activityInfo.packageName);
appInfoEntity.setAppVersion(getVersion(context, resolveInfo.activityInfo.packageName));
appInfoEntity.setAppVersionCode(getVersionCode(context, resolveInfo.activityInfo.packageName));
String appDir = null;
try {
// 指定包名的程序源文件路径
appDir = context.getPackageManager().getAppli