| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- package com.cooleshow.base.utils;
- import android.app.ActivityManager;
- import android.content.Context;
- import android.os.Build;
- import android.os.Environment;
- import java.io.File;
- import androidx.annotation.RequiresApi;
- /**
- * <pre>
- * author: Blankj
- * blog : http://blankj.com
- * time : 2016/09/27
- * desc : utils about clean
- * </pre>
- */
- public final class CleanUtils {
- private CleanUtils() {
- throw new UnsupportedOperationException("u can't instantiate me...");
- }
- /**
- * Clean the internal cache.
- * <p>directory: /data/data/package/cache</p>
- *
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanInternalCache() {
- return UtilsBridge.deleteAllInDir(Utils.getApp().getCacheDir());
- }
- /**
- * Clean the internal files.
- * <p>directory: /data/data/package/files</p>
- *
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanInternalFiles() {
- return UtilsBridge.deleteAllInDir(Utils.getApp().getFilesDir());
- }
- /**
- * Clean the internal databases.
- * <p>directory: /data/data/package/databases</p>
- *
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanInternalDbs() {
- return UtilsBridge.deleteAllInDir(new File(Utils.getApp().getFilesDir().getParent(), "databases"));
- }
- /**
- * Clean the internal database by name.
- * <p>directory: /data/data/package/databases/dbName</p>
- *
- * @param dbName The name of database.
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanInternalDbByName(final String dbName) {
- return Utils.getApp().deleteDatabase(dbName);
- }
- /**
- * Clean the internal shared preferences.
- * <p>directory: /data/data/package/shared_prefs</p>
- *
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanInternalSp() {
- return UtilsBridge.deleteAllInDir(new File(Utils.getApp().getFilesDir().getParent(), "shared_prefs"));
- }
- /**
- * Clean the external cache.
- * <p>directory: /storage/emulated/0/android/data/package/cache</p>
- *
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanExternalCache() {
- return Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())
- && UtilsBridge.deleteAllInDir(Utils.getApp().getExternalCacheDir());
- }
- /**
- * Clean the custom directory.
- *
- * @param dirPath The path of directory.
- * @return {@code true}: success<br>{@code false}: fail
- */
- public static boolean cleanCustomDir(final String dirPath) {
- return UtilsBridge.deleteAllInDir(UtilsBridge.getFileByPath(dirPath));
- }
- @RequiresApi(api = Build.VERSION_CODES.KITKAT)
- public static void cleanAppUserData() {
- ActivityManager am = (ActivityManager) Utils.getApp().getSystemService(Context.ACTIVITY_SERVICE);
- //noinspection ConstantConditions
- am.clearApplicationUserData();
- }
- }
|