public static boolean deleteDir(File dir) { if (dir != null && dir.isDirectory()) { String[] children = dir.list(); if (children != null) { for (String child : children) { boolean success = deleteDir(new File(dir, child)); if (!success) { return false; } } } } return dir != null && dir.delete(); }
/** * Use InstallManager or other entity such as the Installed repository in the engine to obtain * the installed apps */ @Deprecated public static List<PackageInfo> getUserInstalledApps( PackageManager packageManager) { List<PackageInfo> tmp = new LinkedList<>(); for (PackageInfo packageInfo : getAllInstalledApps(packageManager)) { if ((packageInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) { tmp.add(packageInfo); } } return tmp; }
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @SuppressWarnings("deprecation") public static String getAbis() { final String[] abis = getSdkVer() >= Build.VERSION_CODES.LOLLIPOP ? Build.SUPPORTED_ABIS : new String[] { Build.CPU_ABI, Build.CPU_ABI2 }; final StringBuilder builder = new StringBuilder(); for (int i = 0; i < abis.length; i++) { builder.append(abis[i]); if (i < abis.length - 1) { builder.append(","); } } return builder.toString(); }
public Installed(@NonNull PackageInfo packageInfo, @Nullable String storeName, PackageManager packageManager) { setIcon(AptoideUtils.SystemU.getApkIconPath(packageInfo)); setName(AptoideUtils.SystemU.getApkLabel(packageInfo, packageManager)); setPackageName(packageInfo.packageName); setVersionCode(packageInfo.versionCode); setVersionName(packageInfo.versionName); setStoreName(storeName); this.packageAndVersionCode = packageInfo.packageName + packageInfo.versionCode; setSystemApp((packageInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0); if (packageInfo.signatures != null && packageInfo.signatures.length > 0) { setSignature( AptoideUtils.AlgorithmU.computeSha1WithColon(packageInfo.signatures[0].toByteArray())); } setStatus(STATUS_COMPLETED); setType(TYPE_UNKNOWN); }
private String computeCpuAbi() { return SystemU.getAbis(); }
private String computeGlEs() { return SystemU.getGlEsVer(activityManager); }
private int computeMinSdk() { return SystemU.getSdkVer(); }
public static void clearApplicationData(Context context) { File cache = context.getCacheDir(); File appDir = new File(cache.getParent()); if (appDir.exists()) { String[] children = appDir.list(); for (String s : children) { if (!s.equals("lib")) { deleteDir(new File(appDir, s)); } } } }