aboutsummaryrefslogtreecommitdiff
path: root/library/src/main/java/top/trumeet/redirectstorage/wrapper/WrapperKK.java
diff options
context:
space:
mode:
Diffstat (limited to 'library/src/main/java/top/trumeet/redirectstorage/wrapper/WrapperKK.java')
-rw-r--r--library/src/main/java/top/trumeet/redirectstorage/wrapper/WrapperKK.java102
1 files changed, 102 insertions, 0 deletions
diff --git a/library/src/main/java/top/trumeet/redirectstorage/wrapper/WrapperKK.java b/library/src/main/java/top/trumeet/redirectstorage/wrapper/WrapperKK.java
new file mode 100644
index 0000000..58d1d65
--- /dev/null
+++ b/library/src/main/java/top/trumeet/redirectstorage/wrapper/WrapperKK.java
@@ -0,0 +1,102 @@
+package top.trumeet.redirectstorage.wrapper;
+
+import android.annotation.TargetApi;
+import android.os.Build;
+import android.os.Environment;
+
+import java.io.File;
+
+/**
+ * Created by Trumeet on 2017/9/15.
+ * @author Trumeet
+ */
+
+@TargetApi(Build.VERSION_CODES.KITKAT)
+class WrapperKK extends AbstractWrapper {
+ WrapperKK(Environment.UserEnvironment ue, int userId, String customPath) {
+ super(ue, userId, customPath);
+ }
+
+ @Override
+ public File getRealExternalStorageDirectory() {
+ return null;
+ }
+
+ private File convert (File dir) {
+ if (!mEnable)
+ return dir;
+ return new File(convertDirs(dir)[0].getAbsolutePath());
+ }
+
+ private File[] convert (File[] dirs) {
+ if (!mEnable)
+ return dirs;
+ return convertDirs(dirs);
+ }
+
+ @Deprecated
+ public File getExternalStorageDirectory() {
+ return convert(mBase.getExternalStorageDirectory());
+ }
+
+ @Deprecated
+ public File getExternalStoragePublicDirectory(String type) {
+ return buildExternalStoragePublicDirs(type)[0];
+ }
+
+ public File[] getExternalDirsForVold() {
+ return convert(mBase.getExternalDirsForVold());
+ }
+
+ public File[] getExternalDirsForApp() {
+ return convert(mBase.getExternalDirsForApp());
+ }
+
+ public File getMediaDir() {
+ return convert(mBase.getMediaDir());
+ }
+
+ public File[] buildExternalStoragePublicDirs(String type) {
+ return convert(mBase.buildExternalStoragePublicDirs(type));
+ }
+
+ public File[] buildExternalStorageAndroidDataDirs() {
+ return convert(mBase.buildExternalStorageAndroidDataDirs());
+ }
+
+ public File[] buildExternalStorageAndroidObbDirs() {
+ return convert(mBase.buildExternalStorageAndroidObbDirs());
+ }
+
+ public File[] buildExternalStorageAppDataDirs(String packageName) {
+ return convert(mBase.buildExternalStorageAppDataDirs(packageName));
+ }
+
+ public File[] buildExternalStorageAppDataDirsForVold(String packageName) {
+ return convert(mBase.buildExternalStorageAppDataDirsForVold(packageName));
+ }
+
+ public File[] buildExternalStorageAppMediaDirs(String packageName) {
+ return convert(mBase.buildExternalStorageAppMediaDirs(packageName));
+ }
+
+ public File[] buildExternalStorageAppMediaDirsForVold(String packageName) {
+ return convert(mBase.buildExternalStorageAppMediaDirsForVold(packageName));
+ }
+
+ public File[] buildExternalStorageAppObbDirs(String packageName) {
+ return convert(mBase.buildExternalStorageAppObbDirs(packageName));
+ }
+
+ public File[] buildExternalStorageAppObbDirsForVold(String packageName) {
+ return convert(mBase.buildExternalStorageAppObbDirsForVold(packageName));
+ }
+
+ public File[] buildExternalStorageAppFilesDirs(String packageName) {
+ return convert(mBase.buildExternalStorageAppFilesDirs(packageName));
+ }
+
+ public File[] buildExternalStorageAppCacheDirs(String packageName) {
+ return convert(mBase.buildExternalStorageAppCacheDirs(packageName));
+ }
+}