public static boolean deleteDir(String dir) { return deleteDir(new File(dir)); }
public static boolean deleteDir(File dir, Set<File> ignores) { if (dir.isDirectory()) { String[] children = dir.list(); for (String file : children) { boolean success = deleteDir(new File(dir, file), ignores); if (!success) { return false; } } } return ignores != null && ignores.contains(dir) || dir.delete(); }
public static boolean deleteDir(File dir) { if (dir == null) { return false; } boolean success = true; if (dir.isDirectory()) { String[] children = dir.list(); for (String file : children) { boolean ret = deleteDir(new File(dir, file)); if (!ret) { success = false; } } if (success) { // if all subdirectory are deleted, delete the dir itself. return dir.delete(); } } return dir.delete(); }
private void destroyInternal() { synchronized (mLock) { mSealed = true; mDestroyed = true; // Force shut down all bridges for (FileBridge bridge : mBridges) { bridge.forceClose(); } } if (stageDir != null) { FileUtils.deleteDir(stageDir.getAbsolutePath()); } }
private void cleanUpResidualFiles(PackageSetting ps) { VLog.w(TAG, "cleanUpResidualFiles: " + ps.packageName); File dataAppDir = VEnvironment.getDataAppPackageDirectory(ps.packageName); FileUtils.deleteDir(dataAppDir); // We shouldn't remove user data here!!! Just remove the package. // for (int userId : VUserManagerService.get().getUserIds()) { // FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(userId, ps.packageName)); // } }
private void uninstallPackageFully(PackageSetting ps) { String packageName = ps.packageName; try { BroadcastSystem.get().stopApp(packageName); VActivityManagerService.get().killAppByPkg(packageName, VUserHandle.USER_ALL); VEnvironment.getPackageResourcePath(packageName).delete(); FileUtils.deleteDir(VEnvironment.getDataAppPackageDirectory(packageName)); VEnvironment.getOdexFile(packageName).delete(); for (int id : VUserManagerService.get().getUserIds()) { FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(id, packageName)); FileUtils.deleteDir(VEnvironment.getVirtualPrivateStorageDir(id, packageName)); } PackageCacheManager.remove(packageName); } catch (Exception e) { e.printStackTrace(); } finally { notifyAppUninstalled(ps, -1); } }
@Override public boolean clearPackage(String packageName) throws RemoteException { try { BroadcastSystem.get().stopApp(packageName); VActivityManagerService.get().killAppByPkg(packageName, VUserHandle.USER_ALL); for (int id : VUserManagerService.get().getUserIds()) { FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(id, packageName)); FileUtils.deleteDir(VEnvironment.getVirtualPrivateStorageDir(id, packageName)); } return true; } catch (Exception e) { return false; } }
@Override public boolean clearPackageAsUser(int userId, String packageName) throws RemoteException { if (!VUserManagerService.get().exists(userId)) { return false; } PackageSetting ps = PackageCacheManager.getSetting(packageName); if (ps != null) { int[] userIds = getPackageInstalledUsers(packageName); if (!ArrayUtils.contains(userIds, userId)) { return false; } if (userIds.length == 1) { clearPackage(packageName); } else { // Just hidden it VActivityManagerService.get().killAppByPkg(packageName, userId); ps.setInstalled(userId, false); mPersistenceLayer.save(); FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(userId, packageName)); FileUtils.deleteDir(VEnvironment.getVirtualPrivateStorageDir(userId, packageName)); } return true; } return false; }
File libDir = new File(appDir, "lib"); if (res.isUpdate) { FileUtils.deleteDir(libDir); VEnvironment.getOdexFile(pkg.packageName).delete(); VActivityManagerService.get().killAppByPkg(pkg.packageName, VUserHandle.USER_ALL);
@Override public synchronized boolean uninstallPackageAsUser(String packageName, int userId) { if (!VUserManagerService.get().exists(userId)) { return false; } PackageSetting ps = PackageCacheManager.getSetting(packageName); if (ps != null) { int[] userIds = getPackageInstalledUsers(packageName); if (!ArrayUtils.contains(userIds, userId)) { return false; } if (userIds.length == 1) { uninstallPackageFully(ps); } else { // Just hidden it VActivityManagerService.get().killAppByPkg(packageName, userId); ps.setInstalled(userId, false); notifyAppUninstalled(ps, userId); mPersistenceLayer.save(); FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(userId, packageName)); FileUtils.deleteDir(VEnvironment.getVirtualPrivateStorageDir(userId, packageName)); } return true; } return false; }
public static boolean deleteDir(String dir) { return deleteDir(new File(dir)); }
public static boolean deleteDir(String dir) { return deleteDir(new File(dir)); }
public static boolean deleteDir(File dir) { if (dir.isDirectory()) { String[] children = dir.list(); for (String file : children) { boolean success = deleteDir(new File(dir, file)); if (!success) { return false; } } } return dir.delete(); }
public static boolean deleteDir(File dir, Set<File> ignores) { if (dir.isDirectory()) { String[] children = dir.list(); for (String file : children) { boolean success = deleteDir(new File(dir, file), ignores); if (!success) { return false; } } } return ignores != null && ignores.contains(dir) || dir.delete(); }
private void destroyInternal() { synchronized (mLock) { mSealed = true; mDestroyed = true; // Force shut down all bridges for (FileBridge bridge : mBridges) { bridge.forceClose(); } } if (stageDir != null) { FileUtils.deleteDir(stageDir.getAbsolutePath()); } }
private void destroyInternal() { synchronized (mLock) { mSealed = true; mDestroyed = true; // Force shut down all bridges for (FileBridge bridge : mBridges) { bridge.forceClose(); } } if (stageDir != null) { FileUtils.deleteDir(stageDir.getAbsolutePath()); } }
private void cleanUpResidualFiles(PackageSetting ps) { File dataAppDir = VEnvironment.getDataAppPackageDirectory(ps.packageName); FileUtils.deleteDir(dataAppDir); for (int userId : VUserManagerService.get().getUserIds()) { FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(userId, ps.packageName)); } }
private void cleanUpResidualFiles(PackageSetting ps) { VLog.w(TAG, "cleanUpResidualFiles: " + ps.packageName); File dataAppDir = VEnvironment.getDataAppPackageDirectory(ps.packageName); FileUtils.deleteDir(dataAppDir); // We shouldn't remove user data here!!! Just remove the package. // for (int userId : VUserManagerService.get().getUserIds()) { // FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(userId, ps.packageName)); // } }
@Override public boolean clearPackage(String packageName) throws RemoteException { try { BroadcastSystem.get().stopApp(packageName); VActivityManagerService.get().killAppByPkg(packageName, VUserHandle.USER_ALL); for (int id : VUserManagerService.get().getUserIds()) { FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(id, packageName)); FileUtils.deleteDir(VEnvironment.getVirtualPrivateStorageDir(id, packageName)); } return true; } catch (Exception e) { return false; } }
private void uninstallPackageFully(PackageSetting ps) { String packageName = ps.packageName; try { BroadcastSystem.get().stopApp(packageName); VActivityManagerService.get().killAppByPkg(packageName, VUserHandle.USER_ALL); VEnvironment.getPackageResourcePath(packageName).delete(); FileUtils.deleteDir(VEnvironment.getDataAppPackageDirectory(packageName)); VEnvironment.getOdexFile(packageName).delete(); for (int id : VUserManagerService.get().getUserIds()) { FileUtils.deleteDir(VEnvironment.getDataUserPackageDirectory(id, packageName)); } PackageCacheManager.remove(packageName); } catch (Exception e) { e.printStackTrace(); } finally { notifyAppUninstalled(ps, -1); } }