From 55c3fc2eb9344eb3278b2690b32488d8a200adaa Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Fri, 8 Mar 2019 17:46:44 +0800
Subject: [PATCH 001/181] see 03/08 log
---
CHANGELOG.md | 1 +
config.gradle | 17 ++++++-------
gradle.properties | 4 ++-
.../com/blankj/launcher/pkg/MainActivity.kt | 2 +-
.../pkg/src/main/res/layout/activity_main.xml | 18 ++++++-------
lib/base/build.gradle | 6 ++---
.../java/com/blankj/lib/base/BaseActivity.kt | 2 +-
.../com/blankj/lib/base/BaseApplication.kt | 2 +-
.../com/blankj/lib/base/BaseDrawerActivity.kt | 6 ++---
.../java/com/blankj/lib/base/BaseFragment.kt | 6 ++---
.../blankj/lib/base/rv/BaseViewHolder.java | 4 +--
.../lib/base/rv/RecycleViewDivider.java | 10 ++++----
.../lib/base/rv/adapter/BaseAdapter.java | 6 ++---
.../lib/base/rv/adapter/SingleAdapter.java | 2 +-
.../src/main/res/layout/activity_back.xml | 14 +++++------
.../src/main/res/layout/activity_drawer.xml | 6 ++---
subutil/lib/build.gradle | 6 ++---
.../blankj/subutil/util/LocationUtils.java | 2 +-
.../com/blankj/subutil/util/PinyinUtils.java | 2 +-
.../java/com/blankj/subutil/util/Utils.java | 4 +--
.../blankj/subutil/pkg/helper/DialogHelper.kt | 2 +-
utilcode/lib/build.gradle | 8 +++---
utilcode/lib/project.properties | 2 +-
.../utilcode/constant/MemoryConstants.java | 2 +-
.../constant/PermissionConstants.java | 2 +-
.../utilcode/constant/TimeConstants.java | 2 +-
.../blankj/utilcode/util/ActivityUtils.java | 9 ++++---
.../blankj/utilcode/util/AntiShakeUtils.java | 5 ++--
.../com/blankj/utilcode/util/AppUtils.java | 5 ++--
.../com/blankj/utilcode/util/BarUtils.java | 11 ++++----
.../blankj/utilcode/util/BrightnessUtils.java | 5 ++--
.../utilcode/util/CacheDiskStaticUtils.java | 3 ++-
.../blankj/utilcode/util/CacheDiskUtils.java | 3 ++-
.../utilcode/util/CacheDoubleStaticUtils.java | 3 ++-
.../utilcode/util/CacheDoubleUtils.java | 2 +-
.../utilcode/util/CacheMemoryStaticUtils.java | 2 +-
.../utilcode/util/CacheMemoryUtils.java | 4 +--
.../com/blankj/utilcode/util/ColorUtils.java | 12 ++++-----
.../com/blankj/utilcode/util/CrashUtils.java | 4 +--
.../com/blankj/utilcode/util/DeviceUtils.java | 4 +--
.../blankj/utilcode/util/FragmentUtils.java | 21 ++++++++--------
.../com/blankj/utilcode/util/ImageUtils.java | 14 +++++------
.../com/blankj/utilcode/util/IntentUtils.java | 4 +--
.../com/blankj/utilcode/util/LogUtils.java | 8 +++---
.../blankj/utilcode/util/MetaDataUtils.java | 2 +-
.../blankj/utilcode/util/NetworkUtils.java | 2 +-
.../utilcode/util/NotificationUtils.java | 6 ++---
.../com/blankj/utilcode/util/ObjectUtils.java | 6 ++---
.../blankj/utilcode/util/PermissionUtils.java | 8 +++---
.../com/blankj/utilcode/util/PhoneUtils.java | 2 +-
.../blankj/utilcode/util/ProcessUtils.java | 4 +--
.../com/blankj/utilcode/util/RegexUtils.java | 2 +-
.../blankj/utilcode/util/ResourceUtils.java | 2 +-
.../blankj/utilcode/util/SPStaticUtils.java | 2 +-
.../com/blankj/utilcode/util/SPUtils.java | 2 +-
.../com/blankj/utilcode/util/ScreenUtils.java | 5 ++--
.../blankj/utilcode/util/SnackbarUtils.java | 14 +++++------
.../com/blankj/utilcode/util/SpanUtils.java | 16 ++++++------
.../com/blankj/utilcode/util/StringUtils.java | 4 +--
.../com/blankj/utilcode/util/ThreadUtils.java | 7 +++---
.../com/blankj/utilcode/util/TimeUtils.java | 2 +-
.../com/blankj/utilcode/util/ToastUtils.java | 10 ++++----
.../com/blankj/utilcode/util/UriUtils.java | 25 +++++++++++++------
.../java/com/blankj/utilcode/util/Utils.java | 2 +-
.../blankj/utilcode/util/VibrateUtils.java | 2 +-
.../blankj/utilcode/util/ObjectUtilsTest.java | 5 ++--
.../pkg/feature/activity/ActivityActivity.kt | 2 +-
.../feature/activity/SubActivityActivity.kt | 2 +-
.../feature/bar/BarStatusFragmentActivity.kt | 16 ++++++------
.../pkg/feature/fragment/ContainerFragment.kt | 6 ++---
.../pkg/feature/fragment/FragmentActivity.kt | 6 ++---
.../pkg/feature/image/ImageActivity.kt | 8 +++---
.../pkg/feature/snackbar/SnackbarActivity.kt | 2 +-
.../utilcode/pkg/feature/span/SpanActivity.kt | 2 +-
.../utilcode/pkg/feature/toast/CustomToast.kt | 2 +-
.../pkg/feature/toast/ToastActivity.kt | 2 +-
.../utilcode/pkg/helper/DialogHelper.kt | 2 +-
.../main/res/layout/activity_adaptscreen.xml | 4 +--
.../res/layout/activity_adaptscreen_close.xml | 4 +--
.../layout/activity_adaptscreen_height.xml | 4 +--
.../res/layout/activity_adaptscreen_width.xml | 4 +--
.../layout/activity_bar_status_fragment.xml | 4 +--
.../src/main/res/layout/activity_fragment.xml | 2 +-
.../src/main/res/layout/activity_image.xml | 2 +-
84 files changed, 241 insertions(+), 220 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8271c33548..a1706be701 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,4 @@
+* `19/03/09` [fix] UriUtils#uri2File.
* `19/03/08` [add] LogUtils support multi process. Publish v1.23.7.
* `19/03/02` [fix] LogUtils#file.
* `19/02/28` [fix] ImageUtils#calculateInSampleSize. Publish v1.23.6.
diff --git a/config.gradle b/config.gradle
index 57c3d35e99..106f066059 100644
--- a/config.gradle
+++ b/config.gradle
@@ -2,7 +2,7 @@ ext {
applicationId = 'com.blankj.androidutilcode'
appName = 'Util'
- compileSdkVersion = 27
+ compileSdkVersion = 28
minSdkVersion = 14
targetSdkVersion = 27
versionCode = 1_023_007
@@ -16,8 +16,8 @@ ext {
// lib version
kotlin_version = '1.3.0'
- support_version = '27.1.1'
leakcanary_version = '1.6.3'
+ androidx_version = '1.0.0'
dep = [
plugin : [
@@ -30,19 +30,18 @@ ext {
],
// lib
- support : [
- appcompat_v7: "com.android.support:appcompat-v7:$support_version",
- design : "com.android.support:design:$support_version",
- multidex : "com.android.support:multidex:1.0.2",
- ],
- constraint : "com.android.support.constraint:constraint-layout:1.1.3",
+ appcompat : "androidx.appcompat:appcompat:$androidx_version",
+ design : "com.google.android.material:material:$androidx_version",
+ multidex : "androidx.multidex:multidex:2.0.1",
+ constraint : "androidx.constraintlayout:constraintlayout:1.1.3",
+
kotlin : "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version",
leakcanary : [
android : "com.squareup.leakcanary:leakcanary-android:$leakcanary_version",
android_no_op : "com.squareup.leakcanary:leakcanary-android-no-op:$leakcanary_version",
support_fragment: "com.squareup.leakcanary:leakcanary-support-fragment:$leakcanary_version"
],
- free_proguard: "com.blankj:free-proguard:0.0.7",
+ free_proguard: "com.blankj:free-proguard:0.0.12",
adapt_screen : "com.blankj:adapt-screen:0.0.3",
gson : "com.google.code.gson:gson:2.8.2",
diff --git a/gradle.properties b/gradle.properties
index e98b0a89fc..ad5471a961 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -17,4 +17,6 @@
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
-#org.gradle.jvmargs=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
\ No newline at end of file
+#org.gradle.jvmargs=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
+android.enableJetifier=true
+android.useAndroidX=true
\ No newline at end of file
diff --git a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt b/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt
index 27d29a032a..e6dc516ed6 100644
--- a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt
+++ b/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt
@@ -2,7 +2,7 @@ package com.blankj.launcher.pkg
import android.graphics.Color
import android.os.Bundle
-import android.support.v7.app.ActionBarDrawerToggle
+import androidx.appcompat.app.ActionBarDrawerToggle
import android.view.View
import android.widget.ImageView
import com.blankj.lib.base.BaseDrawerActivity
diff --git a/launcher/pkg/src/main/res/layout/activity_main.xml b/launcher/pkg/src/main/res/layout/activity_main.xml
index 3b31dafe32..ee8b62a6fa 100644
--- a/launcher/pkg/src/main/res/layout/activity_main.xml
+++ b/launcher/pkg/src/main/res/layout/activity_main.xml
@@ -1,17 +1,17 @@
-
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
index 9cbf4e06fd..91b336abcf 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
@@ -7,8 +7,8 @@
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import java.lang.reflect.InvocationTargetException;
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
index 45e67a4a0d..9eba25c622 100644
--- a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
@@ -1,6 +1,6 @@
package com.blankj.subutil.pkg.helper
-import android.support.v7.app.AlertDialog
+import androidx.appcompat.app.AlertDialog
import com.blankj.subutil.pkg.R
import com.blankj.utilcode.util.ActivityUtils
import com.blankj.utilcode.util.PermissionUtils
diff --git a/utilcode/lib/build.gradle b/utilcode/lib/build.gradle
index 3570124816..41b0dacaa4 100644
--- a/utilcode/lib/build.gradle
+++ b/utilcode/lib/build.gradle
@@ -1,7 +1,7 @@
apply {
from "${rootDir.path}/config_lib.gradle"
- plugin "tech.harmonysoft.oss.traute"
+// plugin "tech.harmonysoft.oss.traute"
plugin "com.github.dcendents.android-maven"
plugin "com.jfrog.bintray"
plugin "readme-core"
@@ -17,10 +17,10 @@ apply from: "${rootDir.path}/gradle/bintrayUploadAndroid.gradle"
dependencies {
compile dep.gson
- compileOnly dep.support.appcompat_v7
- compileOnly dep.support.design
+ compileOnly dep.appcompat
+ compileOnly dep.design
testImplementation dep.junit
testImplementation dep.robolectric
- testImplementation dep.support.appcompat_v7
+ testImplementation dep.appcompat
}
\ No newline at end of file
diff --git a/utilcode/lib/project.properties b/utilcode/lib/project.properties
index 22ae3b8603..d0f2a3f7e0 100644
--- a/utilcode/lib/project.properties
+++ b/utilcode/lib/project.properties
@@ -1,7 +1,7 @@
#project
project.name=UtilCode
project.groupId=com.blankj
-project.artifactId=utilcode
+project.artifactId=utilcodex
project.packaging=aar
project.siteUrl=https://github.com/Blankj/AndroidUtilCode
project.gitUrl=https://github.com/Blankj/AndroidUtilCode.git
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
index b68bfcb113..5c05c0163e 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.constant;
-import android.support.annotation.IntDef;
+import androidx.annotation.IntDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
index 76f7e9a217..6db826e4ab 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
@@ -4,7 +4,7 @@
import android.Manifest.permission;
import android.annotation.SuppressLint;
import android.os.Build;
-import android.support.annotation.StringDef;
+import androidx.annotation.StringDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
index 9932037bf8..45090576e3 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.constant;
-import android.support.annotation.IntDef;
+import androidx.annotation.IntDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
index 4b8a9a07b5..9dd16d6e48 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
@@ -10,15 +10,16 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.AnimRes;
-import android.support.annotation.NonNull;
-import android.support.v4.app.ActivityOptionsCompat;
-import android.support.v4.util.Pair;
import android.util.Log;
import android.view.View;
import java.util.List;
+import androidx.annotation.AnimRes;
+import androidx.annotation.NonNull;
+import androidx.core.app.ActivityOptionsCompat;
+import androidx.core.util.Pair;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
index 7e87e73474..ca9036225e 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
@@ -1,9 +1,10 @@
package com.blankj.utilcode.util;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
import android.view.View;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+
/**
*
* author: blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
index 136f27b5ed..357c423fc6 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
@@ -17,8 +17,6 @@
import android.net.Uri;
import android.os.Build;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.v4.content.FileProvider;
import android.util.Log;
import java.io.File;
@@ -27,6 +25,9 @@
import java.util.ArrayList;
import java.util.List;
+import androidx.annotation.NonNull;
+import androidx.core.content.FileProvider;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
index 7b5509b2b5..22178a5c20 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
@@ -8,11 +8,6 @@
import android.graphics.Color;
import android.graphics.Point;
import android.os.Build;
-import android.support.annotation.ColorInt;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresApi;
-import android.support.annotation.RequiresPermission;
-import android.support.v4.widget.DrawerLayout;
import android.util.Log;
import android.util.TypedValue;
import android.view.Display;
@@ -27,6 +22,12 @@
import java.lang.reflect.Method;
+import androidx.annotation.ColorInt;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
+import androidx.annotation.RequiresPermission;
+import androidx.drawerlayout.widget.DrawerLayout;
+
import static android.Manifest.permission.EXPAND_STATUS_BAR;
/**
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
index f9344b0a59..bacc519540 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
@@ -2,11 +2,12 @@
import android.content.ContentResolver;
import android.provider.Settings;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
import android.view.Window;
import android.view.WindowManager;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java
index bb48a4b5cf..c5a9a17a6d 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java
@@ -3,13 +3,14 @@
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
import org.json.JSONArray;
import org.json.JSONObject;
import java.io.Serializable;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java
index 99aef6b078..2e6637febf 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java
@@ -8,7 +8,6 @@
import android.graphics.drawable.Drawable;
import android.os.Parcel;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
import android.util.Log;
import com.blankj.utilcode.constant.CacheConstants;
@@ -37,6 +36,8 @@
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java
index 2ef267bd01..6dbb9f7475 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java
@@ -3,13 +3,14 @@
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
import org.json.JSONArray;
import org.json.JSONObject;
import java.io.Serializable;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java
index c800423c78..aca1c25837 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java
@@ -3,7 +3,7 @@
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import com.blankj.utilcode.constant.CacheConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java
index 56abfba117..aedcfa7fc4 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java
index d0e06e394d..ddaa2baed9 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java
@@ -1,7 +1,7 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
-import android.support.v4.util.LruCache;
+import androidx.annotation.NonNull;
+import androidx.collection.LruCache;
import com.blankj.utilcode.constant.CacheConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java
index 4c0c22232b..a6603cfc44 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java
@@ -1,12 +1,12 @@
package com.blankj.utilcode.util;
import android.graphics.Color;
-import android.support.annotation.ColorInt;
-import android.support.annotation.ColorRes;
-import android.support.annotation.FloatRange;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.ColorRes;
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java
index 9ef930c467..a096321cf4 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java
@@ -5,8 +5,8 @@
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Environment;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
import android.util.Log;
import java.io.BufferedWriter;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java
index c1c2c3c76e..d0c1788a02 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java
@@ -8,8 +8,8 @@
import android.os.Build;
import android.os.PowerManager;
import android.provider.Settings;
-import android.support.annotation.RequiresApi;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresApi;
+import androidx.annotation.RequiresPermission;
import android.text.TextUtils;
import java.io.File;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java
index 43b8537e75..9e8ae14ef1 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java
@@ -3,16 +3,6 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.AnimRes;
-import android.support.annotation.AnimatorRes;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.IdRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentTransaction;
import android.util.Log;
import android.view.View;
@@ -20,6 +10,17 @@
import java.util.Collections;
import java.util.List;
+import androidx.annotation.AnimRes;
+import androidx.annotation.AnimatorRes;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.IdRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentTransaction;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java
index 83e01eb1ad..cbee7dd4bd 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java
@@ -27,13 +27,13 @@
import android.renderscript.Element;
import android.renderscript.RenderScript;
import android.renderscript.ScriptIntrinsicBlur;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.FloatRange;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresApi;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
+import androidx.core.content.ContextCompat;
import android.view.View;
import java.io.BufferedOutputStream;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java
index 6faa37d043..1e26dc8a9a 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java
@@ -8,8 +8,8 @@
import android.os.Bundle;
import android.provider.MediaStore;
import android.provider.Settings;
-import android.support.annotation.RequiresPermission;
-import android.support.v4.content.FileProvider;
+import androidx.annotation.RequiresPermission;
+import androidx.core.content.FileProvider;
import java.io.File;
import java.util.ArrayList;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java
index e1e2e78600..f5d814207d 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java
@@ -12,10 +12,10 @@
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
-import android.support.annotation.IntDef;
-import android.support.annotation.IntRange;
-import android.support.annotation.RequiresApi;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.RequiresApi;
+import androidx.collection.SimpleArrayMap;
import android.util.Log;
import com.google.gson.Gson;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java
index 6f6cf85b80..bd4b8da935 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java
@@ -8,7 +8,7 @@
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.ServiceInfo;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java
index f281d777c2..3171837f46 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java
@@ -7,7 +7,7 @@
import android.net.NetworkInfo;
import android.net.wifi.WifiManager;
import android.os.Build;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresPermission;
import android.telephony.TelephonyManager;
import android.text.format.Formatter;
import android.util.Log;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java
index b8163d2e66..73a900b465 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java
@@ -5,9 +5,9 @@
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
-import android.support.annotation.Nullable;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.annotation.Nullable;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationManagerCompat;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java
index be5491ece0..3c0c087a39 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java
@@ -1,9 +1,9 @@
package com.blankj.utilcode.util;
import android.os.Build;
-import android.support.annotation.RequiresApi;
-import android.support.v4.util.LongSparseArray;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.annotation.RequiresApi;
+import androidx.collection.LongSparseArray;
+import androidx.collection.SimpleArrayMap;
import android.util.SparseArray;
import android.util.SparseBooleanArray;
import android.util.SparseIntArray;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java
index 235a0f3f94..1cb3df0156 100755
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java
@@ -10,10 +10,10 @@
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.annotation.RequiresApi;
+import androidx.core.content.ContextCompat;
import android.util.Log;
import android.view.MotionEvent;
import android.view.WindowManager;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java
index 99068781a4..f407f81b5f 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java
@@ -7,7 +7,7 @@
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresPermission;
import android.telephony.SmsManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java
index 7db75522d9..00c2bf6f73 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java
@@ -10,8 +10,8 @@
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
import android.util.Log;
import java.io.BufferedReader;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java
index ba57fab956..817a94149f 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.collection.SimpleArrayMap;
import com.blankj.utilcode.constant.RegexConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java
index 92424163bb..ee41e95958 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.RawRes;
+import androidx.annotation.RawRes;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java
index d3e21fb873..21274c3023 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java
@@ -1,7 +1,7 @@
package com.blankj.utilcode.util;
import android.content.SharedPreferences;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import java.util.Map;
import java.util.Set;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java
index 554a2ed586..a9d18a1a55 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java
@@ -3,7 +3,7 @@
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import java.util.Collections;
import java.util.HashMap;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
index c3e089a90f..f55e4a21db 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
@@ -7,12 +7,11 @@
import android.content.res.Configuration;
import android.content.res.Resources;
import android.graphics.Bitmap;
-import android.graphics.Canvas;
import android.graphics.Point;
import android.os.Build;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
import android.util.DisplayMetrics;
import android.view.Surface;
import android.view.View;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java
index b164e6154e..eab1990d29 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java
@@ -1,12 +1,12 @@
package com.blankj.utilcode.util;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.IntDef;
-import android.support.annotation.IntRange;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.NonNull;
-import android.support.design.widget.Snackbar;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import com.google.android.material.snackbar.Snackbar;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.style.ForegroundColorSpan;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java
index 641204fd63..d79cf9262b 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java
@@ -14,14 +14,14 @@
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.FloatRange;
-import android.support.annotation.IntDef;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.content.ContextCompat;
import android.text.Layout;
import android.text.Layout.Alignment;
import android.text.SpannableStringBuilder;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java
index c3254e3d32..70f0defe50 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java
@@ -1,8 +1,8 @@
package com.blankj.utilcode.util;
import android.content.res.Resources;
-import android.support.annotation.ArrayRes;
-import android.support.annotation.StringRes;
+import androidx.annotation.ArrayRes;
+import androidx.annotation.StringRes;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java
index ba7122e366..819af790e8 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java
@@ -2,9 +2,6 @@
import android.os.Handler;
import android.os.Looper;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
import android.util.Log;
import android.util.SparseArray;
@@ -21,6 +18,10 @@
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java
index adaa920474..a5286b0fbe 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import com.blankj.utilcode.constant.TimeConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java
index b4fe658945..b25360e52c 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java
@@ -14,11 +14,11 @@
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.StringRes;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.StringRes;
+import androidx.core.app.NotificationManagerCompat;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java
index 98f3ef66a8..8e4fd9d09c 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java
@@ -8,12 +8,14 @@
import android.os.Environment;
import android.provider.DocumentsContract;
import android.provider.MediaStore;
-import android.support.annotation.NonNull;
-import android.support.v4.content.FileProvider;
+import android.text.TextUtils;
import android.util.Log;
import java.io.File;
+import androidx.annotation.NonNull;
+import androidx.core.content.FileProvider;
+
/**
*
* author: Blankj
@@ -70,12 +72,19 @@ public static File uri2File(@NonNull final Uri uri) {
Log.d("UriUtils", uri.toString() + " parse failed. -> 1");
return null;
} else if ("com.android.providers.downloads.documents".equals(authority)) {
- final String id = DocumentsContract.getDocumentId(uri);
- final Uri contentUri = ContentUris.withAppendedId(
- Uri.parse("content://downloads/public_downloads"),
- Long.valueOf(id)
- );
- return getFileFromUri(contentUri, 2);
+ String id = DocumentsContract.getDocumentId(uri);
+ if (!TextUtils.isEmpty(id)) {
+ if (id.startsWith("raw:")) {
+ return new File(id.substring(4));
+ }
+ final Uri contentUri = ContentUris.withAppendedId(
+ Uri.parse(Environment.DIRECTORY_DOWNLOADS),
+ Long.valueOf(id)
+ );
+ return getFileFromUri(contentUri, 2);
+ }
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 3");
+ return null;
} else if ("com.android.providers.media.documents".equals(authority)) {
final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":");
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java
index 52b82376e1..d858e4ad22 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java
@@ -7,7 +7,7 @@
import android.app.Application.ActivityLifecycleCallbacks;
import android.content.Context;
import android.os.Bundle;
-import android.support.v4.content.FileProvider;
+import androidx.core.content.FileProvider;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
index a57bbb8241..622d657817 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
@@ -2,7 +2,7 @@
import android.content.Context;
import android.os.Vibrator;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresPermission;
import static android.Manifest.permission.VIBRATE;
diff --git a/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java b/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java
index a0203f78fc..ed12c24d8d 100644
--- a/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java
+++ b/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java
@@ -1,7 +1,5 @@
package com.blankj.utilcode.util;
-import android.support.v4.util.LongSparseArray;
-import android.support.v4.util.SimpleArrayMap;
import android.util.SparseArray;
import android.util.SparseBooleanArray;
import android.util.SparseIntArray;
@@ -12,6 +10,9 @@
import java.util.HashMap;
import java.util.LinkedList;
+import androidx.collection.LongSparseArray;
+import androidx.collection.SimpleArrayMap;
+
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
index 5ace21f5b1..f3d3600a27 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
@@ -6,7 +6,7 @@ import android.graphics.Bitmap
import android.graphics.drawable.BitmapDrawable
import android.os.Build
import android.os.Bundle
-import android.support.v4.app.ActivityOptionsCompat
+import androidx.core.app.ActivityOptionsCompat
import android.view.View
import android.view.Window
import com.blankj.lib.base.BaseTitleBarActivity
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
index 4815032936..864f1c12b4 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
@@ -2,7 +2,7 @@ package com.blankj.utilcode.pkg.feature.activity
import android.os.Build
import android.os.Bundle
-import android.support.v4.app.ActivityCompat
+import androidx.core.app.ActivityCompat
import android.view.View
import android.view.Window
import com.blankj.lib.base.BaseTitleBarActivity
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
index b2633ddf5c..0dac18c72c 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
@@ -3,10 +3,10 @@ package com.blankj.utilcode.pkg.feature.bar
import android.content.Context
import android.content.Intent
import android.os.Bundle
-import android.support.design.widget.BottomNavigationView
-import android.support.v4.app.Fragment
-import android.support.v4.app.FragmentPagerAdapter
-import android.support.v4.view.ViewPager
+import com.google.android.material.bottomnavigation.BottomNavigationView
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentPagerAdapter
+import androidx.viewpager.widget.ViewPager
import android.view.View
import com.blankj.lib.base.BaseActivity
import com.blankj.utilcode.pkg.R
@@ -37,7 +37,7 @@ class BarStatusFragmentActivity : BaseActivity() {
R.id.barStatusFragmentNavigationCustom
)
- private val mFragmentList = ArrayList()
+ private val mFragmentList = ArrayList()
private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener l@{ item ->
when (item.itemId) {
@@ -78,8 +78,8 @@ class BarStatusFragmentActivity : BaseActivity() {
mFragmentList.add(BarStatusCustomFragment.newInstance())
barStatusFragmentVp.offscreenPageLimit = 3
- barStatusFragmentVp.adapter = object : FragmentPagerAdapter(supportFragmentManager) {
- override fun getItem(position: Int): Fragment {
+ barStatusFragmentVp.adapter = object : androidx.fragment.app.FragmentPagerAdapter(supportFragmentManager) {
+ override fun getItem(position: Int): androidx.fragment.app.Fragment {
return mFragmentList[position]
}
@@ -88,7 +88,7 @@ class BarStatusFragmentActivity : BaseActivity() {
}
}
- barStatusFragmentVp.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
+ barStatusFragmentVp.addOnPageChangeListener(object : androidx.viewpager.widget.ViewPager.OnPageChangeListener {
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {}
override fun onPageSelected(position: Int) {
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
index ca0289a158..117c7d121e 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
@@ -2,8 +2,8 @@ package com.blankj.utilcode.pkg.feature.fragment
import android.os.Build
import android.os.Bundle
-import android.support.annotation.RequiresApi
-import android.support.v4.app.Fragment
+import androidx.annotation.RequiresApi
+import androidx.fragment.app.Fragment
import android.transition.*
import android.view.View
import com.blankj.lib.base.BaseLazyFragment
@@ -129,7 +129,7 @@ class ContainerFragment : BaseLazyFragment(), FragmentUtils.OnBackClickListener
}
}
- private fun addSharedElement(fragment: Fragment): Fragment {
+ private fun addSharedElement(fragment: androidx.fragment.app.Fragment): androidx.fragment.app.Fragment {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
fragment.sharedElementEnterTransition = DetailTransition()
fragment.enterTransition = Fade()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
index b768f563e5..6e3137b9c6 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
@@ -4,8 +4,8 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.os.PersistableBundle
-import android.support.design.widget.BottomNavigationView
-import android.support.v4.app.Fragment
+import com.google.android.material.bottomnavigation.BottomNavigationView
+import androidx.fragment.app.Fragment
import android.view.View
import com.blankj.lib.base.BaseActivity
import com.blankj.utilcode.pkg.R
@@ -30,7 +30,7 @@ class FragmentActivity : BaseActivity() {
}
}
- private val mFragments = arrayListOf()
+ private val mFragments = arrayListOf()
private var curIndex: Int = 0
private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener { item ->
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
index 496c5a4032..636d92c030 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
@@ -6,9 +6,9 @@ import android.graphics.Bitmap
import android.graphics.Color
import android.os.Build
import android.os.Bundle
-import android.support.annotation.LayoutRes
-import android.support.annotation.StringRes
-import android.support.v7.widget.LinearLayoutManager
+import androidx.annotation.LayoutRes
+import androidx.annotation.StringRes
+import androidx.recyclerview.widget.LinearLayoutManager
import android.view.View
import android.widget.ImageView
import android.widget.TextView
@@ -92,7 +92,7 @@ class ImageActivity : BaseActivity() {
}
imageRv.adapter = ImageAdapter(mList, R.layout.item_image)
- imageRv.layoutManager = LinearLayoutManager(this)
+ imageRv.layoutManager = androidx.recyclerview.widget.LinearLayoutManager(this)
}
override fun doBusiness() {}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
index 4bd07d274e..34d3914fe1 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
@@ -4,7 +4,7 @@ import android.content.Context
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
-import android.support.annotation.StringRes
+import androidx.annotation.StringRes
import android.text.SpannableStringBuilder
import android.view.View
import android.view.ViewGroup
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
index f3a1a3ee02..7c5fd45308 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
@@ -5,7 +5,7 @@ import android.content.Context
import android.content.Intent
import android.graphics.*
import android.os.Bundle
-import android.support.annotation.ColorInt
+import androidx.annotation.ColorInt
import android.text.Layout
import android.text.SpannableStringBuilder
import android.text.TextPaint
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
index 314ba33d59..458ecbb3fb 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
@@ -2,7 +2,7 @@ package com.blankj.utilcode.pkg.feature.toast
import android.os.Handler
import android.os.Looper
-import android.support.annotation.StringRes
+import androidx.annotation.StringRes
import android.widget.TextView
import android.widget.Toast
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
index ea6c10c24d..40055d14b9 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
@@ -4,7 +4,7 @@ import android.content.Context
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
-import android.support.v4.content.ContextCompat
+import androidx.core.content.ContextCompat
import android.view.Gravity
import android.view.View
import com.blankj.lib.base.BaseTitleBarActivity
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
index 7e6094414a..c3247b1312 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
@@ -1,6 +1,6 @@
package com.blankj.utilcode.pkg.helper
-import android.support.v7.app.AlertDialog
+import androidx.appcompat.app.AlertDialog
import android.text.method.ScrollingMovementMethod
import android.view.LayoutInflater
import android.view.View
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
index 003c6f5840..e33848b84d 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
@@ -1,5 +1,5 @@
-
-
+
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
index c3f88ecba3..e43cbb2bb5 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
@@ -8,7 +8,7 @@
android:background="@color/white"
tools:context=".feature.adaptScreen.CloseAdaptActivity">
-
@@ -42,6 +42,6 @@
android:textSize="30pt"
app:layout_constraintTop_toBottomOf="@id/adaptScreenCloseAdaptDpTv" />
-
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
index 0b207d97f5..07c76be55b 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
@@ -8,7 +8,7 @@
android:background="@color/white"
tools:context=".feature.adaptScreen.HeightActivity">
-
@@ -94,6 +94,6 @@
-
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
index 46e0f2f1a2..5a791d924f 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
@@ -8,7 +8,7 @@
android:background="@color/white"
tools:context=".feature.adaptScreen.WidthActivity">
-
@@ -147,6 +147,6 @@
-
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml b/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
index c5f975b58f..1a36770b58 100644
--- a/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
@@ -7,7 +7,7 @@
android:background="@color/white"
android:orientation="vertical">
-
-
-
-
From 70b6089109b6e58734d0a500820f54cb41858eba Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Fri, 8 Mar 2019 18:07:14 +0800
Subject: [PATCH 002/181] see 03/08 log
---
utilcode/README-CN.md | 3 +++
utilcode/README.md | 3 +++
2 files changed, 6 insertions(+)
diff --git a/utilcode/README-CN.md b/utilcode/README-CN.md
index f3756be966..7fc06ebf99 100644
--- a/utilcode/README-CN.md
+++ b/utilcode/README-CN.md
@@ -3,6 +3,9 @@
Gradle:
```groovy
implementation 'com.blankj:utilcode:1.23.7'
+
+// if u use AndroidX, use the following
+implementation 'com.blankj:utilcodex:1.23.7'
```
diff --git a/utilcode/README.md b/utilcode/README.md
index 75d8757892..094cc44c08 100644
--- a/utilcode/README.md
+++ b/utilcode/README.md
@@ -3,6 +3,9 @@
Gradle:
```groovy
implementation 'com.blankj:utilcode:1.23.7'
+
+// if u use AndroidX, use the following
+implementation 'com.blankj:utilcodex:1.23.7'
```
From 2fa66306221456a5be12d9d201c7495958596fb4 Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Mon, 11 Mar 2019 20:45:31 +0800
Subject: [PATCH 003/181] see 03/11 log
---
utilcode/lib/project.properties | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/utilcode/lib/project.properties b/utilcode/lib/project.properties
index d0f2a3f7e0..d238eda740 100644
--- a/utilcode/lib/project.properties
+++ b/utilcode/lib/project.properties
@@ -1,9 +1,9 @@
#project
-project.name=UtilCode
+project.name=UtilCodeX
project.groupId=com.blankj
project.artifactId=utilcodex
project.packaging=aar
project.siteUrl=https://github.com/Blankj/AndroidUtilCode
project.gitUrl=https://github.com/Blankj/AndroidUtilCode.git
#javadoc
-javadoc.name=UtilCode
\ No newline at end of file
+javadoc.name=UtilCodeX
\ No newline at end of file
From 6b0ff9575675cf0ae15c9c9a85eb249b5591c3a8 Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Mon, 3 Jun 2019 20:49:21 +0800
Subject: [PATCH 004/181] see 06/03 log
---
.gitignore | 2 +-
CHANGELOG.md | 1 +
gradle.properties | 8 +++++-
gradle/config/config.gradle | 10 ++++----
gradle/config/configApp.gradle | 5 +++-
launcher/app/build.gradle | 6 ++---
launcher/pkg/build.gradle | 2 +-
.../com/blankj/launcher/pkg/MainActivity.kt | 2 +-
.../pkg/src/main/res/layout/activity_main.xml | 18 ++++++-------
lib/base/build.gradle | 2 +-
.../com/blankj/lib/base/BaseActivity.java | 5 ++--
.../com/blankj/lib/base/BaseApplication.java | 3 ++-
.../blankj/lib/base/BaseDrawerActivity.java | 11 ++++----
.../com/blankj/lib/base/BaseFragment.java | 13 +++++-----
.../blankj/lib/base/BaseTitleActivity.java | 9 ++++---
.../java/com/blankj/lib/base/IBaseView.java | 5 ++--
.../com/blankj/lib/base/rv/BaseAdapter.java | 5 ++--
.../java/com/blankj/lib/base/rv/BaseCell.java | 3 ++-
.../blankj/lib/base/rv/BaseViewHolder.java | 4 +--
.../lib/base/rv/RecycleViewDivider.java | 10 ++++----
.../main/res/layout/activity_base_title.xml | 11 ++++----
.../activity_base_title_stub_scroll.xml | 4 +--
.../src/main/res/layout/activity_drawer.xml | 6 ++---
subutil/app/build.gradle | 2 +-
subutil/lib/build.gradle | 2 +-
.../blankj/subutil/util/LocationUtils.java | 2 +-
.../com/blankj/subutil/util/PinyinUtils.java | 2 +-
.../java/com/blankj/subutil/util/Utils.java | 4 +--
.../subutil/util/http/ExecutorFactory.java | 3 ++-
.../blankj/subutil/util/http/HttpUtils.java | 3 ++-
.../com/blankj/subutil/util/http/Request.java | 3 ++-
.../blankj/subutil/util/http/SSLConfig.java | 3 ++-
subutil/pkg/build.gradle | 2 +-
.../blankj/subutil/pkg/helper/DialogHelper.kt | 2 +-
utilcode/README-CN.md | 2 +-
utilcode/README.md | 2 +-
utilcode/app/build.gradle | 2 +-
utilcode/lib/build.gradle | 2 +-
utilcode/lib/project.properties | 6 ++---
.../utilcode/constant/MemoryConstants.java | 2 +-
.../constant/PermissionConstants.java | 2 +-
.../utilcode/constant/TimeConstants.java | 2 +-
.../blankj/utilcode/util/ActivityUtils.java | 11 ++++----
.../blankj/utilcode/util/AntiShakeUtils.java | 5 ++--
.../com/blankj/utilcode/util/AppUtils.java | 5 ++--
.../com/blankj/utilcode/util/BarUtils.java | 11 ++++----
.../blankj/utilcode/util/BrightnessUtils.java | 5 ++--
.../com/blankj/utilcode/util/BusUtils.java | 5 ++--
.../utilcode/util/CacheDiskStaticUtils.java | 3 ++-
.../blankj/utilcode/util/CacheDiskUtils.java | 3 ++-
.../utilcode/util/CacheDoubleStaticUtils.java | 3 ++-
.../utilcode/util/CacheDoubleUtils.java | 2 +-
.../utilcode/util/CacheMemoryStaticUtils.java | 2 +-
.../utilcode/util/CacheMemoryUtils.java | 4 +--
.../com/blankj/utilcode/util/ColorUtils.java | 12 ++++-----
.../com/blankj/utilcode/util/CrashUtils.java | 4 +--
.../com/blankj/utilcode/util/DeviceUtils.java | 5 ++--
.../blankj/utilcode/util/FragmentUtils.java | 21 ++++++++--------
.../com/blankj/utilcode/util/ImageUtils.java | 14 +++++------
.../com/blankj/utilcode/util/IntentUtils.java | 4 +--
.../blankj/utilcode/util/KeyboardUtils.java | 3 ++-
.../com/blankj/utilcode/util/LogUtils.java | 8 +++---
.../blankj/utilcode/util/MetaDataUtils.java | 2 +-
.../blankj/utilcode/util/NetworkUtils.java | 5 ++--
.../utilcode/util/NotificationUtils.java | 6 ++---
.../com/blankj/utilcode/util/ObjectUtils.java | 6 ++---
.../blankj/utilcode/util/PermissionUtils.java | 8 +++---
.../com/blankj/utilcode/util/PhoneUtils.java | 2 +-
.../blankj/utilcode/util/ProcessUtils.java | 4 +--
.../com/blankj/utilcode/util/RegexUtils.java | 2 +-
.../blankj/utilcode/util/ResourceUtils.java | 2 +-
.../blankj/utilcode/util/SPStaticUtils.java | 2 +-
.../com/blankj/utilcode/util/SPUtils.java | 2 +-
.../com/blankj/utilcode/util/ScreenUtils.java | 4 +--
.../com/blankj/utilcode/util/ShellUtils.java | 2 +-
.../blankj/utilcode/util/SnackbarUtils.java | 14 +++++------
.../com/blankj/utilcode/util/SpanUtils.java | 16 ++++++------
.../com/blankj/utilcode/util/StringUtils.java | 4 +--
.../com/blankj/utilcode/util/ThreadUtils.java | 5 ++--
.../com/blankj/utilcode/util/TimeUtils.java | 2 +-
.../com/blankj/utilcode/util/ToastUtils.java | 10 ++++----
.../com/blankj/utilcode/util/UriUtils.java | 25 +++++++++++++------
.../java/com/blankj/utilcode/util/Utils.java | 3 ++-
.../blankj/utilcode/util/VibrateUtils.java | 2 +-
.../com/blankj/utilcode/util/BaseTest.java | 11 +++-----
.../blankj/utilcode/util/ObjectUtilsTest.java | 5 ++--
utilcode/pkg/build.gradle | 2 +-
.../pkg/feature/activity/ActivityActivity.kt | 2 +-
.../feature/activity/SubActivityActivity.kt | 2 +-
.../feature/bar/BarStatusFragmentActivity.kt | 16 ++++++------
.../pkg/feature/fragment/ContainerFragment.kt | 6 ++---
.../pkg/feature/fragment/FragmentActivity.kt | 6 ++---
.../pkg/feature/image/ImageActivity.kt | 4 +--
.../pkg/feature/snackbar/SnackbarActivity.kt | 2 +-
.../utilcode/pkg/feature/span/SpanActivity.kt | 2 +-
.../utilcode/pkg/feature/toast/CustomToast.kt | 2 +-
.../pkg/feature/toast/ToastActivity.kt | 2 +-
.../utilcode/pkg/helper/DialogHelper.kt | 5 ++--
.../main/res/layout/activity_adaptscreen.xml | 4 +--
.../res/layout/activity_adaptscreen_close.xml | 4 +--
.../layout/activity_adaptscreen_height.xml | 7 +++---
.../res/layout/activity_adaptscreen_width.xml | 4 +--
.../layout/activity_bar_status_fragment.xml | 4 +--
.../src/main/res/layout/activity_fragment.xml | 2 +-
.../src/main/res/layout/activity_image.xml | 3 +--
105 files changed, 293 insertions(+), 253 deletions(-)
diff --git a/.gitignore b/.gitignore
index 201b88771a..193619553c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,4 +9,4 @@
.externalNativeBuild
/apk
*.phrof
-/maven
+/busMaven
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 95dfb60cc3..9c48786e89 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,7 @@
* `19/04/24` [upd] The swipe panel.
* `19/03/17` [fix] The ugly UI.
* `19/03/14` [fix] AdaptScreenUtils didn't work on some HaWei tablet.
+* `19/03/09` [fix] UriUtils#uri2File.
* `19/03/08` [add] LogUtils support multi process. Publish v1.23.7.
* `19/03/02` [fix] LogUtils#file.
* `19/02/28` [fix] ImageUtils#calculateInSampleSize. Publish v1.23.6.
diff --git a/gradle.properties b/gradle.properties
index 110f0cb7ef..c209c08b84 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -19,4 +19,10 @@
#org.gradle.jvmargs=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
-org.gradle.jvmargs=-XX:MaxHeapSize=1024m -Xmx1024m
\ No newline at end of file
+org.gradle.jvmargs=-Xmx8192m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
+org.gradle.daemon=true
+org.gradle.configureondemand=true
+org.gradle.parallel=true
+
+android.enableJetifier=true
+android.useAndroidX=true
\ No newline at end of file
diff --git a/gradle/config/config.gradle b/gradle/config/config.gradle
index e455c4dba6..e8c793b6b3 100644
--- a/gradle/config/config.gradle
+++ b/gradle/config/config.gradle
@@ -5,7 +5,7 @@ gradle.ext {
applicationId = 'com.blankj.androidutilcode'
appName = 'Util'
- compileSdkVersion = 27
+ compileSdkVersion = 28
minSdkVersion = 14
targetSdkVersion = 27
versionCode = 1_024_000
@@ -13,8 +13,8 @@ gradle.ext {
// lib version
kotlin_version = '1.3.10'
- support_version = '27.1.1'
leakcanary_version = '1.6.3'
+ androidx_version = '1.0.0'
dep = [:]
@@ -36,11 +36,11 @@ gradle.ext {
subutil_lib : new DepConfig(":subutil:lib"),
subutil_pkg : new DepConfig(":subutil:pkg"),
utilcode_app : new DepConfig(":utilcode:app"),
- utilcode_lib : new DepConfig(false, ":utilcode:lib", "com.blankj:utilcode:$versionName"),
+ utilcode_lib : new DepConfig(true, ":utilcode:lib", "com.blankj:utilcode:$versionName"),
utilcode_pkg : new DepConfig(":utilcode:pkg"),
- support_appcompat_v7 : new DepConfig("com.android.support:appcompat-v7:$support_version"),
- support_design : new DepConfig("com.android.support:design:$support_version"),
+ support_appcompat_v7 : new DepConfig("androidx.appcompat:appcompat:$androidx_version"),
+ support_material : new DepConfig("com.google.android.material:material:$androidx_version"),
support_multidex : new DepConfig("com.android.support:multidex:1.0.2"),
constraint : new DepConfig("com.android.support.constraint:constraint-layout:1.1.3"),
diff --git a/gradle/config/configApp.gradle b/gradle/config/configApp.gradle
index cb8d5a290a..809cb07cd4 100644
--- a/gradle/config/configApp.gradle
+++ b/gradle/config/configApp.gradle
@@ -42,8 +42,11 @@ android {
}
dexOptions {
+ preDexLibraries true
javaMaxHeapSize "8g"
maxProcessCount 8
+ incremental true
+ dexInProcess = true
}
}
@@ -57,7 +60,7 @@ dependencies {
private String getSuffix() {
if (project.path == ":launcher:app") return ""
- return project.path.replace(":" , "_").substring(0, project.path.length() - 4)
+ return project.path.replace(":", "_").substring(0, project.path.length() - 4)
}
def configSigning(Project pro) {
diff --git a/launcher/app/build.gradle b/launcher/app/build.gradle
index eb9f8d906f..bf68fb45ff 100644
--- a/launcher/app/build.gradle
+++ b/launcher/app/build.gradle
@@ -4,7 +4,7 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
- implementation project(':launcher:pkg')
- implementation project(':subutil:pkg')
- implementation project(':utilcode:pkg')
+ implementation gradle.ext.dep.launcher_pkg
+ implementation gradle.ext.dep.subutil_pkg
+ implementation gradle.ext.dep.utilcode_pkg
}
\ No newline at end of file
diff --git a/launcher/pkg/build.gradle b/launcher/pkg/build.gradle
index 9fe360a5dd..881637b34a 100644
--- a/launcher/pkg/build.gradle
+++ b/launcher/pkg/build.gradle
@@ -4,5 +4,5 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
- api project(':lib:base')
+ api gradle.ext.dep.lib_base
}
\ No newline at end of file
diff --git a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt b/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt
index 02491cd88d..0e9f0a8477 100644
--- a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt
+++ b/launcher/pkg/src/main/java/com/blankj/launcher/pkg/MainActivity.kt
@@ -2,7 +2,7 @@ package com.blankj.launcher.pkg
import android.graphics.Color
import android.os.Bundle
-import android.support.v7.app.ActionBarDrawerToggle
+import androidx.appcompat.app.ActionBarDrawerToggle
import android.view.View
import android.widget.ImageView
import com.blankj.lib.base.BaseDrawerActivity
diff --git a/launcher/pkg/src/main/res/layout/activity_main.xml b/launcher/pkg/src/main/res/layout/activity_main.xml
index 3b31dafe32..ee8b62a6fa 100644
--- a/launcher/pkg/src/main/res/layout/activity_main.xml
+++ b/launcher/pkg/src/main/res/layout/activity_main.xml
@@ -1,17 +1,17 @@
-
-
-
-
-
-
+
+
-
@@ -69,5 +69,5 @@
android:text="@string/sub_util" />
-
-
+
+
diff --git a/lib/base/build.gradle b/lib/base/build.gradle
index 370036c062..67f9762d82 100644
--- a/lib/base/build.gradle
+++ b/lib/base/build.gradle
@@ -8,7 +8,7 @@ dependencies {
api gradle.ext.dep.subutil_lib
api gradle.ext.dep.support_appcompat_v7
- api gradle.ext.dep.support_design
+ api gradle.ext.dep.support_material
api gradle.ext.dep.support_multidex
api gradle.ext.dep.constraint
api gradle.ext.dep.kotlin
diff --git a/lib/base/src/main/java/com/blankj/lib/base/BaseActivity.java b/lib/base/src/main/java/com/blankj/lib/base/BaseActivity.java
index caae1d45cf..0c9d8fa419 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/BaseActivity.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/BaseActivity.java
@@ -3,11 +3,12 @@
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
-import android.support.annotation.LayoutRes;
-import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
+import androidx.annotation.LayoutRes;
+import androidx.appcompat.app.AppCompatActivity;
+
import com.blankj.swipepanel.SwipePanel;
import com.blankj.utilcode.util.AntiShakeUtils;
import com.blankj.utilcode.util.AppUtils;
diff --git a/lib/base/src/main/java/com/blankj/lib/base/BaseApplication.java b/lib/base/src/main/java/com/blankj/lib/base/BaseApplication.java
index 1e0ddc0b27..5d2eba8260 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/BaseApplication.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/BaseApplication.java
@@ -2,7 +2,8 @@
import android.app.Application;
import android.content.Context;
-import android.support.multidex.MultiDex;
+
+import androidx.multidex.MultiDex;
import com.blankj.utilcode.util.AppUtils;
import com.blankj.utilcode.util.CrashUtils;
diff --git a/lib/base/src/main/java/com/blankj/lib/base/BaseDrawerActivity.java b/lib/base/src/main/java/com/blankj/lib/base/BaseDrawerActivity.java
index c7f7f1daea..ec3c895f6e 100755
--- a/lib/base/src/main/java/com/blankj/lib/base/BaseDrawerActivity.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/BaseDrawerActivity.java
@@ -3,17 +3,18 @@
import android.annotation.SuppressLint;
import android.content.Intent;
import android.net.Uri;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.StringRes;
-import android.support.design.widget.NavigationView;
-import android.support.v4.widget.DrawerLayout;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.widget.FrameLayout;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.StringRes;
+import androidx.drawerlayout.widget.DrawerLayout;
+
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.StringUtils;
+import com.google.android.material.navigation.NavigationView;
/**
diff --git a/lib/base/src/main/java/com/blankj/lib/base/BaseFragment.java b/lib/base/src/main/java/com/blankj/lib/base/BaseFragment.java
index 5667f3f02c..0e4e7ba5cc 100755
--- a/lib/base/src/main/java/com/blankj/lib/base/BaseFragment.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/BaseFragment.java
@@ -4,17 +4,18 @@
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
-import android.support.annotation.IdRes;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentTransaction;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import androidx.annotation.IdRes;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentTransaction;
+
import com.blankj.utilcode.util.AntiShakeUtils;
/**
diff --git a/lib/base/src/main/java/com/blankj/lib/base/BaseTitleActivity.java b/lib/base/src/main/java/com/blankj/lib/base/BaseTitleActivity.java
index a40230420d..e0ed3ed10a 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/BaseTitleActivity.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/BaseTitleActivity.java
@@ -1,16 +1,17 @@
package com.blankj.lib.base;
import android.annotation.SuppressLint;
-import android.support.annotation.LayoutRes;
-import android.support.design.widget.CoordinatorLayout;
-import android.support.v7.app.ActionBar;
-import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewStub;
import android.widget.FrameLayout;
+import androidx.annotation.LayoutRes;
+import androidx.appcompat.app.ActionBar;
+import androidx.appcompat.widget.Toolbar;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
+
import com.blankj.utilcode.util.BarUtils;
import com.blankj.utilcode.util.ColorUtils;
diff --git a/lib/base/src/main/java/com/blankj/lib/base/IBaseView.java b/lib/base/src/main/java/com/blankj/lib/base/IBaseView.java
index 29e8553899..b0550f126c 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/IBaseView.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/IBaseView.java
@@ -1,10 +1,11 @@
package com.blankj.lib.base;
import android.os.Bundle;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.Nullable;
import android.view.View;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.Nullable;
+
/**
*
diff --git a/lib/base/src/main/java/com/blankj/lib/base/rv/BaseAdapter.java b/lib/base/src/main/java/com/blankj/lib/base/rv/BaseAdapter.java
index 11aa94e015..e69be6c6df 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/rv/BaseAdapter.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/rv/BaseAdapter.java
@@ -1,12 +1,13 @@
package com.blankj.lib.base.rv;
import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+
import java.util.List;
/**
diff --git a/lib/base/src/main/java/com/blankj/lib/base/rv/BaseCell.java b/lib/base/src/main/java/com/blankj/lib/base/rv/BaseCell.java
index cdf42c7882..332c4caee0 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/rv/BaseCell.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/rv/BaseCell.java
@@ -1,10 +1,11 @@
package com.blankj.lib.base.rv;
-import android.support.annotation.NonNull;
import android.util.SparseArray;
import android.util.SparseIntArray;
import android.view.View;
+import androidx.annotation.NonNull;
+
/**
*
* author: blankj
diff --git a/lib/base/src/main/java/com/blankj/lib/base/rv/BaseViewHolder.java b/lib/base/src/main/java/com/blankj/lib/base/rv/BaseViewHolder.java
index ceb1c46eac..0bd892f317 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/rv/BaseViewHolder.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/rv/BaseViewHolder.java
@@ -1,7 +1,7 @@
package com.blankj.lib.base.rv;
-import android.support.annotation.IdRes;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.IdRes;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.SparseArray;
import android.view.View;
diff --git a/lib/base/src/main/java/com/blankj/lib/base/rv/RecycleViewDivider.java b/lib/base/src/main/java/com/blankj/lib/base/rv/RecycleViewDivider.java
index 3d2b90f302..dd20894e10 100644
--- a/lib/base/src/main/java/com/blankj/lib/base/rv/RecycleViewDivider.java
+++ b/lib/base/src/main/java/com/blankj/lib/base/rv/RecycleViewDivider.java
@@ -5,11 +5,11 @@
import android.graphics.Canvas;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.NonNull;
-import android.support.v4.content.ContextCompat;
-import android.support.v4.view.ViewCompat;
-import android.support.v7.widget.RecyclerView;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
+import androidx.core.view.ViewCompat;
+import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.widget.LinearLayout;
diff --git a/lib/base/src/main/res/layout/activity_base_title.xml b/lib/base/src/main/res/layout/activity_base_title.xml
index b11ecf7341..986d3669b6 100644
--- a/lib/base/src/main/res/layout/activity_base_title.xml
+++ b/lib/base/src/main/res/layout/activity_base_title.xml
@@ -1,24 +1,23 @@
-
-
-
-
+
-
+
diff --git a/lib/base/src/main/res/layout/activity_base_title_stub_scroll.xml b/lib/base/src/main/res/layout/activity_base_title_stub_scroll.xml
index 96f5e09d49..bd031cfb67 100644
--- a/lib/base/src/main/res/layout/activity_base_title_stub_scroll.xml
+++ b/lib/base/src/main/res/layout/activity_base_title_stub_scroll.xml
@@ -1,5 +1,5 @@
-
-
+
diff --git a/lib/base/src/main/res/layout/activity_drawer.xml b/lib/base/src/main/res/layout/activity_drawer.xml
index 72f70ed969..be44cd718c 100644
--- a/lib/base/src/main/res/layout/activity_drawer.xml
+++ b/lib/base/src/main/res/layout/activity_drawer.xml
@@ -1,5 +1,5 @@
-
-
-
+
diff --git a/subutil/app/build.gradle b/subutil/app/build.gradle
index a2e0172413..a7027c15ef 100644
--- a/subutil/app/build.gradle
+++ b/subutil/app/build.gradle
@@ -4,5 +4,5 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
- implementation project(':subutil:pkg')
+ implementation gradle.ext.dep.subutil_pkg
}
\ No newline at end of file
diff --git a/subutil/lib/build.gradle b/subutil/lib/build.gradle
index 9dcbe0b542..f3140b4f0b 100644
--- a/subutil/lib/build.gradle
+++ b/subutil/lib/build.gradle
@@ -14,7 +14,7 @@ readme {
dependencies {
compileOnly gradle.ext.dep.support_appcompat_v7
- compileOnly gradle.ext.dep.support_design
+ compileOnly gradle.ext.dep.support_material
api(gradle.ext.dep.glide) {
exclude group: "com.android.support"
}
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/LocationUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/LocationUtils.java
index 7ee8747902..0c177b534c 100755
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/LocationUtils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/LocationUtils.java
@@ -11,7 +11,7 @@
import android.location.LocationProvider;
import android.os.Bundle;
import android.provider.Settings;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresPermission;
import android.util.Log;
import java.io.IOException;
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/PinyinUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/PinyinUtils.java
index 22486b3a91..934408c65e 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/PinyinUtils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/PinyinUtils.java
@@ -1,6 +1,6 @@
package com.blankj.subutil.util;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.collection.SimpleArrayMap;
/**
*
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
index 9cbf4e06fd..91b336abcf 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
@@ -7,8 +7,8 @@
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import java.lang.reflect.InvocationTargetException;
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java b/subutil/lib/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java
index f5583397d9..2f26fb9c24 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java
@@ -2,7 +2,8 @@
import android.os.Handler;
import android.os.Looper;
-import android.support.annotation.NonNull;
+
+import androidx.annotation.NonNull;
import java.util.concurrent.Executor;
import java.util.concurrent.LinkedBlockingQueue;
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/HttpUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/http/HttpUtils.java
index b952f318cb..bdd4174486 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/http/HttpUtils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/http/HttpUtils.java
@@ -1,7 +1,8 @@
package com.blankj.subutil.util.http;
import android.accounts.NetworkErrorException;
-import android.support.annotation.NonNull;
+
+import androidx.annotation.NonNull;
import java.io.BufferedOutputStream;
import java.io.ByteArrayOutputStream;
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Request.java b/subutil/lib/src/main/java/com/blankj/subutil/util/http/Request.java
index fe39b1299c..c6eddf9b96 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Request.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/http/Request.java
@@ -1,6 +1,7 @@
package com.blankj.subutil.util.http;
-import android.support.annotation.NonNull;
+
+import androidx.annotation.NonNull;
import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/SSLConfig.java b/subutil/lib/src/main/java/com/blankj/subutil/util/http/SSLConfig.java
index b8624af490..0cf43662f2 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/http/SSLConfig.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/http/SSLConfig.java
@@ -2,7 +2,8 @@
import android.annotation.SuppressLint;
import android.os.Build;
-import android.support.annotation.NonNull;
+
+import androidx.annotation.NonNull;
import java.io.IOException;
import java.net.InetAddress;
diff --git a/subutil/pkg/build.gradle b/subutil/pkg/build.gradle
index 9fe360a5dd..881637b34a 100644
--- a/subutil/pkg/build.gradle
+++ b/subutil/pkg/build.gradle
@@ -4,5 +4,5 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
- api project(':lib:base')
+ api gradle.ext.dep.lib_base
}
\ No newline at end of file
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
index 45e67a4a0d..9eba25c622 100644
--- a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
@@ -1,6 +1,6 @@
package com.blankj.subutil.pkg.helper
-import android.support.v7.app.AlertDialog
+import androidx.appcompat.app.AlertDialog
import com.blankj.subutil.pkg.R
import com.blankj.utilcode.util.ActivityUtils
import com.blankj.utilcode.util.PermissionUtils
diff --git a/utilcode/README-CN.md b/utilcode/README-CN.md
index 445f206121..0bdb622940 100644
--- a/utilcode/README-CN.md
+++ b/utilcode/README-CN.md
@@ -5,7 +5,7 @@ Gradle:
implementation 'com.blankj:utilcode:1.24.0'
// if u use AndroidX, use the following
-implementation 'com.blankj:utilcodex:1.23.7'
+implementation 'com.blankj:utilcodex:1.24.0'
```
diff --git a/utilcode/README.md b/utilcode/README.md
index f449736061..5a6a295b4c 100644
--- a/utilcode/README.md
+++ b/utilcode/README.md
@@ -5,7 +5,7 @@ Gradle:
implementation 'com.blankj:utilcode:1.24.0'
// if u use AndroidX, use the following
-implementation 'com.blankj:utilcodex:1.23.7'
+implementation 'com.blankj:utilcodex:1.24.0'
```
diff --git a/utilcode/app/build.gradle b/utilcode/app/build.gradle
index 5616386892..ea5c172cd7 100644
--- a/utilcode/app/build.gradle
+++ b/utilcode/app/build.gradle
@@ -4,5 +4,5 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
- implementation project(':utilcode:pkg')
+ implementation gradle.ext.dep.utilcode_pkg
}
\ No newline at end of file
diff --git a/utilcode/lib/build.gradle b/utilcode/lib/build.gradle
index e4dd3a6716..6d6c599298 100644
--- a/utilcode/lib/build.gradle
+++ b/utilcode/lib/build.gradle
@@ -18,7 +18,7 @@ dependencies {
compile gradle.ext.dep.gson
compileOnly gradle.ext.dep.support_appcompat_v7
- compileOnly gradle.ext.dep.support_design
+ compileOnly gradle.ext.dep.support_material
testImplementation gradle.ext.dep.junit
testImplementation gradle.ext.dep.robolectric
diff --git a/utilcode/lib/project.properties b/utilcode/lib/project.properties
index 22ae3b8603..d238eda740 100644
--- a/utilcode/lib/project.properties
+++ b/utilcode/lib/project.properties
@@ -1,9 +1,9 @@
#project
-project.name=UtilCode
+project.name=UtilCodeX
project.groupId=com.blankj
-project.artifactId=utilcode
+project.artifactId=utilcodex
project.packaging=aar
project.siteUrl=https://github.com/Blankj/AndroidUtilCode
project.gitUrl=https://github.com/Blankj/AndroidUtilCode.git
#javadoc
-javadoc.name=UtilCode
\ No newline at end of file
+javadoc.name=UtilCodeX
\ No newline at end of file
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
index b68bfcb113..5c05c0163e 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.constant;
-import android.support.annotation.IntDef;
+import androidx.annotation.IntDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
index 76f7e9a217..6db826e4ab 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
@@ -4,7 +4,7 @@
import android.Manifest.permission;
import android.annotation.SuppressLint;
import android.os.Build;
-import android.support.annotation.StringDef;
+import androidx.annotation.StringDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
index 9932037bf8..45090576e3 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.constant;
-import android.support.annotation.IntDef;
+import androidx.annotation.IntDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
index d6a671e4fe..de1bfeb005 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
@@ -10,14 +10,15 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.AnimRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.ActivityOptionsCompat;
-import android.support.v4.util.Pair;
import android.util.Log;
import android.view.View;
+import androidx.annotation.AnimRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.app.ActivityOptionsCompat;
+import androidx.core.util.Pair;
+
import java.util.List;
/**
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
index 7e87e73474..ca9036225e 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
@@ -1,9 +1,10 @@
package com.blankj.utilcode.util;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
import android.view.View;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+
/**
*
* author: blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
index a9368be59f..5a9194ce66 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
@@ -17,8 +17,6 @@
import android.net.Uri;
import android.os.Build;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.v4.content.FileProvider;
import android.util.Log;
import java.io.File;
@@ -27,6 +25,9 @@
import java.util.ArrayList;
import java.util.List;
+import androidx.annotation.NonNull;
+import androidx.core.content.FileProvider;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
index 7b5509b2b5..22178a5c20 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
@@ -8,11 +8,6 @@
import android.graphics.Color;
import android.graphics.Point;
import android.os.Build;
-import android.support.annotation.ColorInt;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresApi;
-import android.support.annotation.RequiresPermission;
-import android.support.v4.widget.DrawerLayout;
import android.util.Log;
import android.util.TypedValue;
import android.view.Display;
@@ -27,6 +22,12 @@
import java.lang.reflect.Method;
+import androidx.annotation.ColorInt;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
+import androidx.annotation.RequiresPermission;
+import androidx.drawerlayout.widget.DrawerLayout;
+
import static android.Manifest.permission.EXPAND_STATUS_BAR;
/**
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
index f9344b0a59..bacc519540 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
@@ -2,11 +2,12 @@
import android.content.ContentResolver;
import android.provider.Settings;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
import android.view.Window;
import android.view.WindowManager;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BusUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BusUtils.java
index f04202043e..d272c99b98 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BusUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/BusUtils.java
@@ -16,11 +16,12 @@
import android.os.Message;
import android.os.Messenger;
import android.os.RemoteException;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java
index bb48a4b5cf..c5a9a17a6d 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java
@@ -3,13 +3,14 @@
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
import org.json.JSONArray;
import org.json.JSONObject;
import java.io.Serializable;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java
index 67e6b3fb0e..a8ae8afa5b 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java
@@ -8,9 +8,10 @@
import android.graphics.drawable.Drawable;
import android.os.Parcel;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
import android.util.Log;
+import androidx.annotation.NonNull;
+
import com.blankj.utilcode.constant.CacheConstants;
import org.json.JSONArray;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java
index 2ef267bd01..6dbb9f7475 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java
@@ -3,13 +3,14 @@
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
import org.json.JSONArray;
import org.json.JSONObject;
import java.io.Serializable;
+import androidx.annotation.NonNull;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java
index c800423c78..aca1c25837 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java
@@ -3,7 +3,7 @@
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Parcelable;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import com.blankj.utilcode.constant.CacheConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java
index 56abfba117..aedcfa7fc4 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java
index d0e06e394d..ddaa2baed9 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java
@@ -1,7 +1,7 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
-import android.support.v4.util.LruCache;
+import androidx.annotation.NonNull;
+import androidx.collection.LruCache;
import com.blankj.utilcode.constant.CacheConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java
index 4c0c22232b..a6603cfc44 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ColorUtils.java
@@ -1,12 +1,12 @@
package com.blankj.utilcode.util;
import android.graphics.Color;
-import android.support.annotation.ColorInt;
-import android.support.annotation.ColorRes;
-import android.support.annotation.FloatRange;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.ColorRes;
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java
index 18b5f814a3..081dd09761 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/CrashUtils.java
@@ -5,8 +5,8 @@
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Environment;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
import android.util.Log;
import java.io.BufferedWriter;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java
index e6b1910cfc..c641c9bdae 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java
@@ -11,11 +11,12 @@
import android.os.Debug;
import android.os.PowerManager;
import android.provider.Settings;
-import android.support.annotation.RequiresApi;
-import android.support.annotation.RequiresPermission;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
+import androidx.annotation.RequiresApi;
+import androidx.annotation.RequiresPermission;
+
import java.io.File;
import java.net.InetAddress;
import java.net.NetworkInterface;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java
index 43b8537e75..9e8ae14ef1 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/FragmentUtils.java
@@ -3,16 +3,6 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
-import android.support.annotation.AnimRes;
-import android.support.annotation.AnimatorRes;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.IdRes;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentTransaction;
import android.util.Log;
import android.view.View;
@@ -20,6 +10,17 @@
import java.util.Collections;
import java.util.List;
+import androidx.annotation.AnimRes;
+import androidx.annotation.AnimatorRes;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.IdRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentTransaction;
+
/**
*
* author: Blankj
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java
index 83e01eb1ad..cbee7dd4bd 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ImageUtils.java
@@ -27,13 +27,13 @@
import android.renderscript.Element;
import android.renderscript.RenderScript;
import android.renderscript.ScriptIntrinsicBlur;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.FloatRange;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresApi;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
+import androidx.core.content.ContextCompat;
import android.view.View;
import java.io.BufferedOutputStream;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java
index 6faa37d043..1e26dc8a9a 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/IntentUtils.java
@@ -8,8 +8,8 @@
import android.os.Bundle;
import android.provider.MediaStore;
import android.provider.Settings;
-import android.support.annotation.RequiresPermission;
-import android.support.v4.content.FileProvider;
+import androidx.annotation.RequiresPermission;
+import androidx.core.content.FileProvider;
import java.io.File;
import java.util.ArrayList;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/KeyboardUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/KeyboardUtils.java
index cfa568fa7c..de3eb285cc 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/KeyboardUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/KeyboardUtils.java
@@ -7,7 +7,6 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.ResultReceiver;
-import android.support.annotation.NonNull;
import android.util.Log;
import android.view.View;
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
@@ -16,6 +15,8 @@
import android.view.inputmethod.InputMethodManager;
import android.widget.FrameLayout;
+import androidx.annotation.NonNull;
+
import java.lang.reflect.Field;
/**
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java
index 1372ecd40b..9a7e11cbf5 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/LogUtils.java
@@ -10,10 +10,10 @@
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
-import android.support.annotation.IntDef;
-import android.support.annotation.IntRange;
-import android.support.annotation.RequiresApi;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.RequiresApi;
+import androidx.collection.SimpleArrayMap;
import android.util.Log;
import com.google.gson.Gson;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java
index 6f6cf85b80..bd4b8da935 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java
@@ -8,7 +8,7 @@
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.ServiceInfo;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java
index d59eb28240..24a05a26b7 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NetworkUtils.java
@@ -7,13 +7,14 @@
import android.net.NetworkInfo;
import android.net.wifi.WifiManager;
import android.os.Build;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.text.format.Formatter;
import android.util.Log;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
+
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.InterfaceAddress;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java
index b8163d2e66..73a900b465 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/NotificationUtils.java
@@ -5,9 +5,9 @@
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
-import android.support.annotation.Nullable;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.annotation.Nullable;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationManagerCompat;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java
index be5491ece0..3c0c087a39 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ObjectUtils.java
@@ -1,9 +1,9 @@
package com.blankj.utilcode.util;
import android.os.Build;
-import android.support.annotation.RequiresApi;
-import android.support.v4.util.LongSparseArray;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.annotation.RequiresApi;
+import androidx.collection.LongSparseArray;
+import androidx.collection.SimpleArrayMap;
import android.util.SparseArray;
import android.util.SparseBooleanArray;
import android.util.SparseIntArray;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java
index d35cbcc620..602efcb5db 100755
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PermissionUtils.java
@@ -9,10 +9,10 @@
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.annotation.RequiresApi;
+import androidx.core.content.ContextCompat;
import android.util.Log;
import android.view.MotionEvent;
import android.view.WindowManager;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java
index 99068781a4..f407f81b5f 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PhoneUtils.java
@@ -7,7 +7,7 @@
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresPermission;
import android.telephony.SmsManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java
index adcd265f72..619b175549 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ProcessUtils.java
@@ -10,8 +10,8 @@
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
import android.util.Log;
import java.util.Arrays;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java
index ba57fab956..817a94149f 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/RegexUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.v4.util.SimpleArrayMap;
+import androidx.collection.SimpleArrayMap;
import com.blankj.utilcode.constant.RegexConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java
index 81d10f08cf..3fb515c06b 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ResourceUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.RawRes;
+import androidx.annotation.RawRes;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java
index d3e21fb873..21274c3023 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java
@@ -1,7 +1,7 @@
package com.blankj.utilcode.util;
import android.content.SharedPreferences;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import java.util.Map;
import java.util.Set;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java
index 554a2ed586..a9d18a1a55 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SPUtils.java
@@ -3,7 +3,7 @@
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import java.util.Collections;
import java.util.HashMap;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
index 7390fceed0..3245eb115c 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
@@ -10,8 +10,8 @@
import android.graphics.Point;
import android.os.Build;
import android.provider.Settings;
-import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresPermission;
import android.util.DisplayMetrics;
import android.view.Surface;
import android.view.View;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ShellUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ShellUtils.java
index b7ad2fa9d2..fc10a601ae 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ShellUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ShellUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import java.io.BufferedReader;
import java.io.DataOutputStream;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java
index b164e6154e..eab1990d29 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java
@@ -1,12 +1,12 @@
package com.blankj.utilcode.util;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.IntDef;
-import android.support.annotation.IntRange;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.NonNull;
-import android.support.design.widget.Snackbar;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import com.google.android.material.snackbar.Snackbar;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.style.ForegroundColorSpan;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java
index b8d9d53aed..4d49451ec0 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/SpanUtils.java
@@ -14,14 +14,14 @@
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.FloatRange;
-import android.support.annotation.IntDef;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.content.ContextCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.content.ContextCompat;
import android.text.Layout;
import android.text.Layout.Alignment;
import android.text.SpannableStringBuilder;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java
index c3254e3d32..70f0defe50 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/StringUtils.java
@@ -1,8 +1,8 @@
package com.blankj.utilcode.util;
import android.content.res.Resources;
-import android.support.annotation.ArrayRes;
-import android.support.annotation.StringRes;
+import androidx.annotation.ArrayRes;
+import androidx.annotation.StringRes;
/**
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java
index 0545a27fa0..19de94ca33 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ThreadUtils.java
@@ -2,10 +2,11 @@
import android.os.Handler;
import android.os.Looper;
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
import android.util.Log;
+import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
+
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.Executor;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java
index adaa920474..a5286b0fbe 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/TimeUtils.java
@@ -1,6 +1,6 @@
package com.blankj.utilcode.util;
-import android.support.annotation.NonNull;
+import androidx.annotation.NonNull;
import com.blankj.utilcode.constant.TimeConstants;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java
index 150425cdba..0dd47cfa3e 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ToastUtils.java
@@ -12,11 +12,11 @@
import android.os.Build;
import android.os.Handler;
import android.os.Message;
-import android.support.annotation.ColorInt;
-import android.support.annotation.DrawableRes;
-import android.support.annotation.LayoutRes;
-import android.support.annotation.StringRes;
-import android.support.v4.app.NotificationManagerCompat;
+import androidx.annotation.ColorInt;
+import androidx.annotation.DrawableRes;
+import androidx.annotation.LayoutRes;
+import androidx.annotation.StringRes;
+import androidx.core.app.NotificationManagerCompat;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java
index 9ad408912a..20fdc39b81 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/UriUtils.java
@@ -8,12 +8,14 @@
import android.os.Environment;
import android.provider.DocumentsContract;
import android.provider.MediaStore;
-import android.support.annotation.NonNull;
-import android.support.v4.content.FileProvider;
+import android.text.TextUtils;
import android.util.Log;
import java.io.File;
+import androidx.annotation.NonNull;
+import androidx.core.content.FileProvider;
+
/**
*
* author: Blankj
@@ -75,12 +77,19 @@ public static File uri2File(@NonNull final Uri uri) {
Log.d("UriUtils", uri.toString() + " parse failed. -> 1");
return null;
} else if ("com.android.providers.downloads.documents".equals(authority)) {
- final String id = DocumentsContract.getDocumentId(uri);
- final Uri contentUri = ContentUris.withAppendedId(
- Uri.parse("content://downloads/public_downloads"),
- Long.valueOf(id)
- );
- return getFileFromUri(contentUri, 2);
+ String id = DocumentsContract.getDocumentId(uri);
+ if (!TextUtils.isEmpty(id)) {
+ if (id.startsWith("raw:")) {
+ return new File(id.substring(4));
+ }
+ final Uri contentUri = ContentUris.withAppendedId(
+ Uri.parse(Environment.DIRECTORY_DOWNLOADS),
+ Long.valueOf(id)
+ );
+ return getFileFromUri(contentUri, 2);
+ }
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 3");
+ return null;
} else if ("com.android.providers.media.documents".equals(authority)) {
final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":");
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java
index d0c98afc96..1992a2c902 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/Utils.java
@@ -13,13 +13,14 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
-import android.support.v4.content.FileProvider;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
+import androidx.core.content.FileProvider;
+
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
index a57bbb8241..622d657817 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
@@ -2,7 +2,7 @@
import android.content.Context;
import android.os.Vibrator;
-import android.support.annotation.RequiresPermission;
+import androidx.annotation.RequiresPermission;
import static android.Manifest.permission.VIBRATE;
diff --git a/utilcode/lib/src/test/java/com/blankj/utilcode/util/BaseTest.java b/utilcode/lib/src/test/java/com/blankj/utilcode/util/BaseTest.java
index 85bc9d8ac2..2dadedff8c 100644
--- a/utilcode/lib/src/test/java/com/blankj/utilcode/util/BaseTest.java
+++ b/utilcode/lib/src/test/java/com/blankj/utilcode/util/BaseTest.java
@@ -1,8 +1,5 @@
package com.blankj.utilcode.util;
-
-import android.support.annotation.NonNull;
-
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
@@ -29,7 +26,7 @@ public BaseTest() {
ShadowLog.stream = System.out;
ThreadUtils.setDeliver(new Executor() {
@Override
- public void execute(@NonNull Runnable command) {
+ public void execute(Runnable command) {
command.run();
}
});
@@ -201,8 +198,8 @@ public void onFail(Throwable t) {
static class Person implements Comparable {
String name;
- int age;
- int time;
+ int age;
+ int time;
public Person(String name) {
this.name = name;
@@ -220,7 +217,7 @@ public String toString() {
}
@Override
- public int compareTo(@NonNull Person o) {
+ public int compareTo(Person o) {
int res = o.age - age;
if (res != 0) {
return res;
diff --git a/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java b/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java
index a0203f78fc..ed12c24d8d 100644
--- a/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java
+++ b/utilcode/lib/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java
@@ -1,7 +1,5 @@
package com.blankj.utilcode.util;
-import android.support.v4.util.LongSparseArray;
-import android.support.v4.util.SimpleArrayMap;
import android.util.SparseArray;
import android.util.SparseBooleanArray;
import android.util.SparseIntArray;
@@ -12,6 +10,9 @@
import java.util.HashMap;
import java.util.LinkedList;
+import androidx.collection.LongSparseArray;
+import androidx.collection.SimpleArrayMap;
+
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
diff --git a/utilcode/pkg/build.gradle b/utilcode/pkg/build.gradle
index 9fe360a5dd..881637b34a 100644
--- a/utilcode/pkg/build.gradle
+++ b/utilcode/pkg/build.gradle
@@ -4,5 +4,5 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
- api project(':lib:base')
+ api gradle.ext.dep.lib_base
}
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
index e784f98401..9982c948b7 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
@@ -6,7 +6,7 @@ import android.graphics.Bitmap
import android.graphics.drawable.BitmapDrawable
import android.os.Build
import android.os.Bundle
-import android.support.v4.app.ActivityOptionsCompat
+import androidx.core.app.ActivityOptionsCompat
import android.view.View
import android.view.Window
import com.blankj.lib.base.BaseTitleActivity
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
index 0c63773639..abf0151bbc 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
@@ -2,7 +2,7 @@ package com.blankj.utilcode.pkg.feature.activity
import android.os.Build
import android.os.Bundle
-import android.support.v4.app.ActivityCompat
+import androidx.core.app.ActivityCompat
import android.view.View
import android.view.Window
import com.blankj.lib.base.BaseTitleActivity
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
index d4f0d60530..fc8020b3e5 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
@@ -3,10 +3,10 @@ package com.blankj.utilcode.pkg.feature.bar
import android.content.Context
import android.content.Intent
import android.os.Bundle
-import android.support.design.widget.BottomNavigationView
-import android.support.v4.app.Fragment
-import android.support.v4.app.FragmentPagerAdapter
-import android.support.v4.view.ViewPager
+import com.google.android.material.bottomnavigation.BottomNavigationView
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentPagerAdapter
+import androidx.viewpager.widget.ViewPager
import android.view.View
import com.blankj.lib.base.BaseActivity
import com.blankj.utilcode.pkg.R
@@ -37,7 +37,7 @@ class BarStatusFragmentActivity : BaseActivity() {
R.id.barStatusFragmentNavigationCustom
)
- private val mFragmentList = ArrayList()
+ private val mFragmentList = ArrayList()
private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener l@{ item ->
when (item.itemId) {
@@ -78,8 +78,8 @@ class BarStatusFragmentActivity : BaseActivity() {
mFragmentList.add(BarStatusCustomFragment.newInstance())
barStatusFragmentVp.offscreenPageLimit = 3
- barStatusFragmentVp.adapter = object : FragmentPagerAdapter(supportFragmentManager) {
- override fun getItem(position: Int): Fragment {
+ barStatusFragmentVp.adapter = object : androidx.fragment.app.FragmentPagerAdapter(supportFragmentManager) {
+ override fun getItem(position: Int): androidx.fragment.app.Fragment {
return mFragmentList[position]
}
@@ -88,7 +88,7 @@ class BarStatusFragmentActivity : BaseActivity() {
}
}
- barStatusFragmentVp.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
+ barStatusFragmentVp.addOnPageChangeListener(object : androidx.viewpager.widget.ViewPager.OnPageChangeListener {
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {}
override fun onPageSelected(position: Int) {
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
index ada9dd0d10..86972c449d 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
@@ -2,8 +2,8 @@ package com.blankj.utilcode.pkg.feature.fragment
import android.os.Build
import android.os.Bundle
-import android.support.annotation.RequiresApi
-import android.support.v4.app.Fragment
+import androidx.annotation.RequiresApi
+import androidx.fragment.app.Fragment
import android.transition.*
import android.view.View
import com.blankj.lib.base.BaseLazyFragment
@@ -128,7 +128,7 @@ class ContainerFragment : BaseLazyFragment(), FragmentUtils.OnBackClickListener
}
}
- private fun addSharedElement(fragment: Fragment): Fragment {
+ private fun addSharedElement(fragment: androidx.fragment.app.Fragment): androidx.fragment.app.Fragment {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
fragment.sharedElementEnterTransition = DetailTransition()
fragment.enterTransition = Fade()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
index 446271b366..b18a2e236b 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
@@ -4,8 +4,8 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.os.PersistableBundle
-import android.support.design.widget.BottomNavigationView
-import android.support.v4.app.Fragment
+import com.google.android.material.bottomnavigation.BottomNavigationView
+import androidx.fragment.app.Fragment
import android.view.View
import com.blankj.lib.base.BaseActivity
import com.blankj.utilcode.pkg.R
@@ -29,7 +29,7 @@ class FragmentActivity : BaseActivity() {
}
}
- private val mFragments = arrayListOf()
+ private val mFragments = arrayListOf()
private var curIndex: Int = 0
private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener { item ->
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
index 0e092e0062..2c6656f220 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
@@ -6,12 +6,12 @@ import android.graphics.Bitmap
import android.graphics.Color
import android.os.Build
import android.os.Bundle
-import android.support.annotation.StringRes
-import android.support.v7.widget.LinearLayoutManager
import android.view.View
import android.widget.Button
import android.widget.ImageView
import android.widget.TextView
+import androidx.annotation.StringRes
+import androidx.recyclerview.widget.LinearLayoutManager
import com.blankj.lib.base.BaseTaskActivity
import com.blankj.lib.base.rv.BaseAdapter
import com.blankj.lib.base.rv.BaseCell
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
index a0ea36d528..cd1c1b0d99 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
@@ -4,7 +4,7 @@ import android.content.Context
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
-import android.support.annotation.StringRes
+import androidx.annotation.StringRes
import android.text.SpannableStringBuilder
import android.view.View
import android.view.ViewGroup
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
index d84ced168c..202069ed61 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
@@ -5,7 +5,7 @@ import android.content.Context
import android.content.Intent
import android.graphics.*
import android.os.Bundle
-import android.support.annotation.ColorInt
+import androidx.annotation.ColorInt
import android.text.Layout
import android.text.SpannableStringBuilder
import android.text.TextPaint
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
index 314ba33d59..458ecbb3fb 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
@@ -2,7 +2,7 @@ package com.blankj.utilcode.pkg.feature.toast
import android.os.Handler
import android.os.Looper
-import android.support.annotation.StringRes
+import androidx.annotation.StringRes
import android.widget.TextView
import android.widget.Toast
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
index 51c9e53774..47f91e826e 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
@@ -4,7 +4,7 @@ import android.content.Context
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
-import android.support.v4.content.ContextCompat
+import androidx.core.content.ContextCompat
import android.view.Gravity
import android.view.View
import com.blankj.lib.base.BaseTitleActivity
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
index 344a69e448..a495a13013 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
@@ -3,7 +3,6 @@ package com.blankj.utilcode.pkg.helper
import android.app.Dialog
import android.graphics.Bitmap
import android.graphics.drawable.ColorDrawable
-import android.support.v7.app.AlertDialog
import android.text.method.ScrollingMovementMethod
import android.view.Gravity
import android.view.LayoutInflater
@@ -12,9 +11,9 @@ import android.widget.Button
import android.widget.EditText
import android.widget.ImageView
import android.widget.TextView
+import androidx.appcompat.app.AlertDialog
import com.blankj.utilcode.pkg.R
import com.blankj.utilcode.util.*
-import com.blankj.utilcode.util.PermissionUtils.OnRationaleListener.ShouldRequest
/**
* ```
@@ -26,7 +25,7 @@ import com.blankj.utilcode.util.PermissionUtils.OnRationaleListener.ShouldReques
*/
object DialogHelper {
- fun showRationaleDialog(shouldRequest: ShouldRequest) {
+ fun showRationaleDialog(shouldRequest: PermissionUtils.OnRationaleListener.ShouldRequest) {
val topActivity = ActivityUtils.getTopActivity()
AlertDialog.Builder(topActivity)
.setTitle(android.R.string.dialog_alert_title)
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
index 792ae5672e..9be8749952 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
@@ -1,5 +1,5 @@
-
-
+
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
index ccc88dddb6..1522b0741b 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
@@ -8,7 +8,7 @@
android:fillViewport="true"
tools:context=".feature.adaptScreen.AdaptCloseActivity">
-
@@ -43,6 +43,6 @@
android:textSize="30pt"
app:layout_constraintTop_toBottomOf="@id/adaptScreenCloseAdaptDpTv" />
-
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
index 350921b04d..75fa87e8e5 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
@@ -1,13 +1,12 @@
-
-
@@ -94,6 +93,6 @@
android:textSize="30pt" />
-
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
index 121415e1b6..dd9f9f40c7 100644
--- a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
@@ -8,7 +8,7 @@
android:fillViewport="true"
tools:context=".feature.adaptScreen.AdaptWidthActivity">
-
@@ -149,6 +149,6 @@
-
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml b/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
index 3ce196004b..bd6e43e7a7 100644
--- a/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
@@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:orientation="vertical">
-
-
-
-
Date: Sat, 29 Jun 2019 19:59:42 +0800
Subject: [PATCH 005/181] see 06/29 log
---
.../test/java/com/blankj/utilcode/util/TimeUtilsTest.java | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/utilcode/lib/src/test/java/com/blankj/utilcode/util/TimeUtilsTest.java b/utilcode/lib/src/test/java/com/blankj/utilcode/util/TimeUtilsTest.java
index 2ba0a41586..5ab8ee17eb 100644
--- a/utilcode/lib/src/test/java/com/blankj/utilcode/util/TimeUtilsTest.java
+++ b/utilcode/lib/src/test/java/com/blankj/utilcode/util/TimeUtilsTest.java
@@ -42,15 +42,14 @@ public class TimeUtilsTest {
public void millis2String() {
assertEquals(timeString, TimeUtils.millis2String(timeMillis));
assertEquals(timeStringFormat, TimeUtils.millis2String(timeMillis, mFormat));
- assertEquals("2017年05月04日", TimeUtils.millis2String(timeMillis, "yyyy年MM月dd日"));
- assertEquals("16时37分", TimeUtils.millis2String(timeMillis, "HH时mm分"));
+ assertEquals(timeStringFormat, TimeUtils.millis2String(timeMillis, "yyyy MM dd HH:mm:ss"));
}
@Test
public void string2Millis() {
assertEquals(timeMillis, TimeUtils.string2Millis(timeString));
assertEquals(timeMillis, TimeUtils.string2Millis(timeStringFormat, mFormat));
- assertEquals(timeMillis, TimeUtils.string2Millis(timeStringFormat, "yyyy年MM月dd日HH时mm分"));
+ assertEquals(timeMillis, TimeUtils.string2Millis(timeStringFormat, "yyyy MM dd HH:mm:ss"));
}
@Test
From ff046c3c8e552aa10167c053a666358f99dac38b Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Wed, 10 Jul 2019 19:46:10 +0800
Subject: [PATCH 006/181] see 07/10 log
---
.gitignore | 7 +-
CHANGELOG.md | 2 +-
README-CN.md | 4 +-
README.md | 4 +-
{launcher => app/launcher}/app/.gitignore | 0
app/launcher/app/build.gradle | 8 +
.../launcher}/app/proguard-rules.pro | 0
.../app/src/main/AndroidManifest.xml | 2 +-
.../com/blankj/launcher/app/LauncherApp.java | 15 +
{launcher => app/launcher}/pkg/.gitignore | 0
app/launcher/pkg/build.gradle | 8 +
.../launcher}/pkg/proguard-rules.pro | 0
app/launcher/pkg/src/main/AndroidManifest.xml | 1 +
.../com/blankj/launcher/pkg}/LauncherApp.java | 4 +-
{subutil => app/main}/app/.gitignore | 0
app/main/app/build.gradle | 8 +
{subutil => app/main}/app/proguard-rules.pro | 0
app/main/app/src/main/AndroidManifest.xml | 27 ++
.../java/com/blankj/main/app/MainApp.java | 35 ++
{subutil/export => app/main/pkg}/.gitignore | 0
app/main/pkg/build.gradle | 7 +
.../main/pkg}/proguard-rules.pro | 0
.../main}/pkg/src/main/AndroidManifest.xml | 2 +-
.../java/com/blankj/main}/pkg/MainActivity.kt | 12 +-
.../com/blankj/main}/pkg/SplashActivity.kt | 2 +-
.../pkg/src/main/res/layout/activity_main.xml | 0
.../main}/pkg/src/main/res/values/strings.xml | 0
{subutil/lib => app/mock}/.gitignore | 0
app/mock/build.gradle | 11 +
{subutil/pkg => app/mock}/proguard-rules.pro | 0
app/mock/src/main/AndroidManifest.xml | 1 +
.../com/blankj/mock/api/SubUtilMockApi.java | 25 +
.../com/blankj/mock/api/UtilCodeMockApi.java | 25 +
{subutil/pkg => app/subutil/app}/.gitignore | 0
app/subutil/app/build.gradle | 8 +
.../subutil}/app/proguard-rules.pro | 0
.../subutil}/app/src/main/AndroidManifest.xml | 0
.../java/com/blankj/subutil/app/SubUtilApp.kt | 0
.../app => app/subutil/export}/.gitignore | 0
app/subutil/export/build.gradle | 7 +
.../subutil}/export/proguard-rules.pro | 0
.../export/src/main/AndroidManifest.xml | 0
.../blankj/subutil/export/api/SubUtilApi.java | 8 +-
.../export => app/subutil/pkg}/.gitignore | 0
app/subutil/pkg/build.gradle | 7 +
.../subutil}/pkg/proguard-rules.pro | 0
.../subutil}/pkg/src/main/AndroidManifest.xml | 0
.../pkg/src/main/assets/test_install_silent | Bin
.../java/com/blankj/subutil/pkg/Config.kt | 0
.../blankj/subutil/pkg}/SubUtilApiImpl.java | 8 +-
.../subutil/pkg/feature/SubUtilActivity.kt | 1 -
.../pkg/feature/appStore/AppStoreActivity.kt | 0
.../pkg/feature/country/CountryActivity.kt | 0
.../feature/dangerous/DangerousActivity.kt | 0
.../pkg/feature/location/LocationActivity.kt | 0
.../pkg/feature/location/LocationService.kt | 0
.../pkg/feature/pinyin/PinyinActivity.kt | 0
.../blankj/subutil/pkg/helper/DialogHelper.kt | 0
.../subutil/pkg/helper/PermissionHelper.kt | 0
.../main/res/layout/activity_app_store.xml | 0
.../src/main/res/layout/activity_country.xml | 0
.../main/res/layout/activity_dangerous.xml | 0
.../src/main/res/layout/activity_location.xml | 0
.../src/main/res/layout/activity_pinyin.xml | 0
.../src/main/res/layout/activity_util_sub.xml | 0
.../pkg/src/main/res/values/strings.xml | 0
{utilcode/pkg => app/utilcode/app}/.gitignore | 0
app/utilcode/app/build.gradle | 8 +
app/utilcode/app/proguard-rules.pro | 21 +
.../app/src/main/AndroidManifest.xml | 3 +-
.../com/blankj/utilcode/app/UtilCodeApp.kt | 0
app/utilcode/export/.gitignore | 1 +
app/utilcode/export/build.gradle | 7 +
app/utilcode/export/proguard-rules.pro | 21 +
.../export/src/main/AndroidManifest.xml | 0
.../utilcode/export/api/UtilCodeApi.java | 20 +
app/utilcode/pkg/.gitignore | 1 +
app/utilcode/pkg/build.gradle | 7 +
app/utilcode/pkg/proguard-rules.pro | 21 +
.../pkg/src/main/AndroidManifest.xml | 85 ++--
.../pkg/src/main/assets/fonts/dnmbhs.ttf | Bin
.../pkg/src/main/assets/test/sub/test.txt | 0
.../pkg/src/main/assets/test/test.txt | 0
.../pkg/src/main/assets/test_install | Bin
.../java/com/blankj/utilcode/pkg/Config.kt | 0
.../blankj/utilcode/pkg/UtilCodeApiImpl.java | 25 +
.../utilcode/pkg/feature/CoreUtilActivity.kt | 7 +-
.../pkg/feature/activity/ActivityActivity.kt | 0
.../feature/activity/SubActivityActivity.kt | 0
.../feature/adaptScreen/AdaptCloseActivity.kt | 0
.../adaptScreen/AdaptHeightActivity.kt | 0
.../adaptScreen/AdaptScreenActivity.kt | 0
.../feature/adaptScreen/AdaptWidthActivity.kt | 0
.../utilcode/pkg/feature/api/ApiActivity.kt | 65 +++
.../api/other/export/OtherModuleApi.java | 27 ++
.../api/other/pkg/OtherPkgApiImpl.java | 28 ++
.../utilcode/pkg/feature/app/AppActivity.kt | 0
.../utilcode/pkg/feature/bar/BarActivity.kt | 0
.../pkg/feature/bar/BarNavActivity.kt | 0
.../feature/bar/BarNotificationActivity.kt | 0
.../pkg/feature/bar/BarStatusActivity.kt | 0
.../pkg/feature/bar/BarStatusAlphaActivity.kt | 0
.../pkg/feature/bar/BarStatusAlphaFragment.kt | 0
.../pkg/feature/bar/BarStatusColorActivity.kt | 0
.../pkg/feature/bar/BarStatusColorFragment.kt | 0
.../feature/bar/BarStatusCustomActivity.kt | 0
.../feature/bar/BarStatusCustomFragment.kt | 0
.../feature/bar/BarStatusDrawerActivity.kt | 0
.../feature/bar/BarStatusFragmentActivity.kt | 0
.../feature/bar/BarStatusImageViewActivity.kt | 0
.../feature/bar/BarStatusImageViewFragment.kt | 0
.../feature/brightness/BrightnessActivity.kt | 0
.../utilcode/pkg/feature/bus/BusActivity.kt | 1 -
.../pkg/feature/bus/BusRemoteActivity.kt | 0
.../pkg/feature/clean/CleanActivity.kt | 0
.../pkg/feature/click/ClickActivity.kt | 0
.../pkg/feature/device/DeviceActivity.kt | 0
.../feature/flashlight/FlashlightActivity.kt | 0
.../pkg/feature/fragment/ChildFragment.kt | 0
.../pkg/feature/fragment/ContainerFragment.kt | 0
.../pkg/feature/fragment/FragmentActivity.kt | 0
.../pkg/feature/fragment/RootFragment.kt | 0
.../pkg/feature/image/ImageActivity.kt | 0
.../pkg/feature/keyboard/KeyboardActivity.kt | 20 +-
.../pkg/feature/language/LanguageActivity.kt | 0
.../utilcode/pkg/feature/log/LogActivity.kt | 0
.../pkg/feature/metaData/MetaDataActivity.kt | 0
.../pkg/feature/network/NetworkActivity.kt | 0
.../utilcode/pkg/feature/path/PathActivity.kt | 0
.../feature/permission/PermissionActivity.kt | 0
.../pkg/feature/phone/PhoneActivity.kt | 0
.../pkg/feature/process/ProcessActivity.kt | 0
.../pkg/feature/reflect/ReflectActivity.kt | 0
.../pkg/feature/resource/ResourceActivity.kt | 0
.../utilcode/pkg/feature/rom/RomActivity.kt | 0
.../pkg/feature/screen/ScreenActivity.kt | 0
.../pkg/feature/sdcard/SDCardActivity.kt | 0
.../pkg/feature/snackbar/SnackbarActivity.kt | 0
.../pkg/feature/spStatic/SPStaticActivity.kt | 0
.../utilcode/pkg/feature/span/SpanActivity.kt | 0
.../utilcode/pkg/feature/toast/CustomToast.kt | 0
.../pkg/feature/toast/ToastActivity.kt | 0
.../pkg/feature/vibrate/VibrateActivity.kt | 0
.../utilcode/pkg/helper/DialogHelper.kt | 0
.../utilcode/pkg/helper/PermissionHelper.kt | 0
.../pkg/src/main/res/anim/fade_in_1000.xml | 0
.../pkg/src/main/res/anim/fade_out_1000.xml | 0
.../src/main/res/anim/slide_in_bottom_200.xml | 0
.../src/main/res/anim/slide_in_right_1000.xml | 0
.../main/res/anim/slide_out_bottom_200.xml | 0
.../src/main/res/anim/slide_out_left_1000.xml | 0
.../animator/fragment_slide_left_enter.xml | 0
.../res/animator/fragment_slide_left_exit.xml | 0
.../animator/fragment_slide_right_enter.xml | 0
.../animator/fragment_slide_right_exit.xml | 0
.../res/drawable/activity_activity_icon.png | Bin
.../res/drawable/activity_activity_logo.png | Bin
.../main/res/drawable/bar_status_custom.xml | 0
.../res/drawable/bar_status_nav_alpha.xml | 0
.../res/drawable/bar_status_nav_color.xml | 0
.../res/drawable/bar_status_nav_custom.xml | 0
.../res/drawable/bar_status_nav_image.xml | 0
.../res/drawable/click_shape_round_rect.xml | 0
.../src/main/res/drawable/fragment_nav.xml | 0
.../pkg/src/main/res/drawable/image_lena.jpg | Bin
.../main/res/drawable/snackbar_custom_bg.xml | 0
.../src/main/res/drawable/span_cheetah.png | Bin
.../res/drawable/span_shape_block_high.xml | 0
.../res/drawable/span_shape_block_low.xml | 0
.../res/drawable/toast_shape_round_rect.xml | 0
.../src/main/res/layout/activity_activity.xml | 0
.../main/res/layout/activity_activity_sub.xml | 0
.../main/res/layout/activity_adaptscreen.xml | 0
.../res/layout/activity_adaptscreen_close.xml | 0
.../layout/activity_adaptscreen_height.xml | 0
.../res/layout/activity_adaptscreen_width.xml | 0
.../pkg/src/main/res/layout/activity_api.xml | 23 +
.../pkg/src/main/res/layout/activity_app.xml | 0
.../pkg/src/main/res/layout/activity_bar.xml | 0
.../src/main/res/layout/activity_bar_nav.xml | 0
.../res/layout/activity_bar_notification.xml | 0
.../main/res/layout/activity_bar_status.xml | 0
.../res/layout/activity_bar_status_alpha.xml | 0
.../res/layout/activity_bar_status_color.xml | 0
.../res/layout/activity_bar_status_drawer.xml | 0
.../layout/activity_bar_status_fragment.xml | 0
.../layout/activity_bar_status_image_view.xml | 0
.../layout/activity_bar_status_swipe_back.xml | 0
.../main/res/layout/activity_brightness.xml | 0
.../pkg/src/main/res/layout/activity_bus.xml | 0
.../main/res/layout/activity_bus_remote.xml | 0
.../src/main/res/layout/activity_clean.xml | 0
.../src/main/res/layout/activity_click.xml | 0
.../src/main/res/layout/activity_device.xml | 0
.../main/res/layout/activity_flashlight.xml | 0
.../src/main/res/layout/activity_fragment.xml | 0
.../src/main/res/layout/activity_image.xml | 0
.../src/main/res/layout/activity_keyboard.xml | 2 +-
.../src/main/res/layout/activity_language.xml | 0
.../pkg/src/main/res/layout/activity_log.xml | 0
.../src/main/res/layout/activity_metadata.xml | 0
.../src/main/res/layout/activity_network.xml | 0
.../pkg/src/main/res/layout/activity_path.xml | 0
.../main/res/layout/activity_permission.xml | 0
.../src/main/res/layout/activity_phone.xml | 0
.../src/main/res/layout/activity_process.xml | 0
.../src/main/res/layout/activity_reflect.xml | 0
.../src/main/res/layout/activity_resource.xml | 0
.../pkg/src/main/res/layout/activity_rom.xml | 0
.../src/main/res/layout/activity_screen.xml | 0
.../src/main/res/layout/activity_sdcard.xml | 0
.../src/main/res/layout/activity_snackbar.xml | 0
.../pkg/src/main/res/layout/activity_span.xml | 0
.../src/main/res/layout/activity_spstatic.xml | 0
.../src/main/res/layout/activity_toast.xml | 0
.../main/res/layout/activity_util_core.xml | 7 +
.../src/main/res/layout/activity_vibrate.xml | 0
.../src/main/res/layout/dialog_fragment.xml | 0
.../src/main/res/layout/dialog_keyboard.xml | 0
.../pkg/src/main/res/layout/dialog_screen.xml | 0
.../pkg/src/main/res/layout/dialog_toast.xml | 0
.../res/layout/fragment_bar_status_alpha.xml | 0
.../res/layout/fragment_bar_status_color.xml | 0
.../res/layout/fragment_bar_status_custom.xml | 0
.../layout/fragment_bar_status_image_view.xml | 0
.../src/main/res/layout/fragment_child.xml | 0
.../main/res/layout/fragment_container.xml | 0
.../pkg/src/main/res/layout/fragment_root.xml | 0
.../pkg/src/main/res/layout/item_image.xml | 0
.../src/main/res/layout/item_image_header.xml | 0
.../src/main/res/layout/snackbar_custom.xml | 0
.../pkg/src/main/res/layout/toast_custom.xml | 0
.../src/main/res/menu/navigation_fragment.xml | 0
.../main/res/menu/navigation_status_bar.xml | 0
.../utilcode}/pkg/src/main/res/raw/test.txt | 0
.../src/main/res/transition/explode_1000.xml | 0
.../pkg/src/main/res/transition/fade_1000.xml | 0
.../src/main/res/transition/slide_1000.xml | 0
.../src/main/res/values-en-rUS/strings.xml | 0
.../src/main/res/values-zh-rCN/strings.xml | 0
.../pkg/src/main/res/values/strings.xml | 6 +
.../pkg/src/main/res/values/styles.xml | 0
build.gradle | 16 +-
.../configApp.gradle => buildApp.gradle | 51 +-
buildLib.gradle | 49 ++
buildSrc/build.gradle | 14 +-
buildSrc/src/main/groovy/BuildConfig.groovy | 109 +++++
buildSrc/src/main/groovy/Config.groovy | 76 +++
buildSrc/src/main/groovy/DepConfig.groovy | 62 +++
buildSrc/src/main/groovy/GLog.groovy | 160 +++++++
.../com/blankj/plugin/FormatUtils.groovy | 0
.../com/blankj/plugin/ReadmeCorePlugin.groovy | 0
.../com/blankj/plugin/ReadmeExtension.groovy | 0
.../com/blankj/plugin/ReadmeSubPlugin.groovy | 2 +-
bus-gradle-plugin/.gitignore | 2 -
.../main/java/com/blankj/bus/BusInject.groovy | 87 ----
.../main/java/com/blankj/bus/BusScan.groovy | 124 -----
.../com/blankj/util/JavassistUtils.groovy | 36 --
.../com/blankj/utilcode/util/BusUtils.java | 17 -
.../java/com/blankj/bus/BusScanTest.groovy | 15 -
.../src/test/java/com/blankj/bus/BusTest.java | 162 -------
gradle.properties | 5 +-
gradle/config/config.gradle | 152 ------
gradle/config/configBuild.gradle | 94 ----
gradle/config/configLib.gradle | 31 --
gradle/util/utils.gradle | 132 -----
launcher/app/build.gradle | 10 -
launcher/pkg/build.gradle | 8 -
lib/base/build.gradle | 22 +-
.../com/blankj/lib/base/BaseApplication.java | 3 +-
lib/common/build.gradle | 4 +-
lib/common/src/main/AndroidManifest.xml | 2 +-
.../blankj/lib/common/CommonApplication.java | 2 +-
.../blankj/lib/common/CommonBackActivity.java | 1 -
.../lib/common/CommonDrawerActivity.java | 1 -
.../lib/common/CommonTitleActivity.java | 1 -
lib/common/src/main/res/values/strings.xml | 2 -
lib/subutil/.gitignore | 1 +
{subutil => lib/subutil}/README-CN.md | 0
{subutil => lib/subutil}/README.md | 0
lib/subutil/build.gradle | 28 ++
.../lib => lib/subutil}/proguard-rules.pro | 0
.../subutil}/src/main/AndroidManifest.xml | 0
.../blankj/subutil/util/AppStoreUtils.java | 0
.../com/blankj/subutil/util/BitUtils.java | 0
.../com/blankj/subutil/util/CameraUtils.java | 0
.../blankj/subutil/util/ClipboardUtils.java | 0
.../blankj/subutil/util/CoordinateUtils.java | 0
.../com/blankj/subutil/util/CountryUtils.java | 0
.../blankj/subutil/util/DangerousUtils.java | 0
.../com/blankj/subutil/util/GlideUtils.java | 0
.../com/blankj/subutil/util/HttpsUtil.java | 0
.../blankj/subutil/util/LocationUtils.java | 0
.../com/blankj/subutil/util/LunarUtils.java | 0
.../com/blankj/subutil/util/PinyinUtils.java | 0
.../blankj/subutil/util/RetrofitUtils.java | 0
.../com/blankj/subutil/util/http/Chain.java | 0
.../subutil/util/http/ExecutorFactory.java | 0
.../com/blankj/subutil/util/http/Headers.java | 0
.../blankj/subutil/util/http/HttpUtils.java | 0
.../blankj/subutil/util/http/Interceptor.java | 0
.../com/blankj/subutil/util/http/Request.java | 0
.../blankj/subutil/util/http/Response.java | 0
.../subutil/util/http/ResponseCallback.java | 0
.../blankj/subutil/util/http/SSLConfig.java | 0
.../com/blankj/subutil/util/BaseTest.java | 0
.../subutil/util/ClipboardUtilsTest.java | 0
.../subutil/util/CoordinateUtilsTest.java | 0
.../blankj/subutil/util/LunarUtilsTest.java | 0
.../com/blankj/subutil/util/TestConfig.java | 0
.../com/blankj/subutil/util/TestUtils.java | 0
.../subutil/util/http/HttpUtilsTest.java | 0
.../blankj/subutil/util/http/UserBean.java | 0
lib/utilcode/.gitignore | 1 +
{utilcode => lib/utilcode}/README-CN.md | 0
.../utilcode}/README-STATIC-BUS.md | 2 +-
{utilcode => lib/utilcode}/README.md | 0
lib/utilcode/build.gradle | 27 ++
.../lib => lib/utilcode}/proguard-rules.pro | 0
.../lib => lib/utilcode}/project.properties | 0
.../utilcode}/src/main/AndroidManifest.xml | 0
.../utilcode/constant/CacheConstants.java | 0
.../utilcode/constant/MemoryConstants.java | 0
.../constant/PermissionConstants.java | 0
.../utilcode/constant/RegexConstants.java | 0
.../utilcode/constant/TimeConstants.java | 0
.../blankj/utilcode/util/ActivityUtils.java | 2 +-
.../utilcode/util/AdaptScreenUtils.java | 0
.../com/blankj/utilcode/util/ApiUtils.java | 101 ++++
.../com/blankj/utilcode/util/AppUtils.java | 0
.../com/blankj/utilcode/util/BarUtils.java | 0
.../blankj/utilcode/util/BrightnessUtils.java | 0
.../com/blankj/utilcode/util/BusUtils.java | 123 +++++
.../utilcode/util/CacheDiskStaticUtils.java | 0
.../blankj/utilcode/util/CacheDiskUtils.java | 0
.../utilcode/util/CacheDoubleStaticUtils.java | 0
.../utilcode/util/CacheDoubleUtils.java | 0
.../utilcode/util/CacheMemoryStaticUtils.java | 0
.../utilcode/util/CacheMemoryUtils.java | 0
.../com/blankj/utilcode/util/CleanUtils.java | 0
.../com/blankj/utilcode/util/ClickUtils.java | 0
.../com/blankj/utilcode/util/CloneUtils.java | 0
.../com/blankj/utilcode/util/CloseUtils.java | 0
.../com/blankj/utilcode/util/ColorUtils.java | 0
.../blankj/utilcode/util/ConvertUtils.java | 0
.../com/blankj/utilcode/util/CrashUtils.java | 0
.../com/blankj/utilcode/util/DeviceUtils.java | 0
.../com/blankj/utilcode/util/EncodeUtils.java | 0
.../blankj/utilcode/util/EncryptUtils.java | 0
.../com/blankj/utilcode/util/FileIOUtils.java | 0
.../com/blankj/utilcode/util/FileUtils.java | 0
.../blankj/utilcode/util/FlashlightUtils.java | 0
.../blankj/utilcode/util/FragmentUtils.java | 0
.../com/blankj/utilcode/util/GsonUtils.java | 0
.../com/blankj/utilcode/util/ImageUtils.java | 0
.../com/blankj/utilcode/util/IntentUtils.java | 0
.../com/blankj/utilcode/util/JsonUtils.java | 0
.../blankj/utilcode/util/KeyboardUtils.java | 81 ++--
.../blankj/utilcode/util/LanguageUtils.java | 0
.../com/blankj/utilcode/util/LogUtils.java | 21 +-
.../blankj/utilcode/util/MessengerUtils.java | 144 +-----
.../blankj/utilcode/util/MetaDataUtils.java | 0
.../blankj/utilcode/util/NetworkUtils.java | 2 +-
.../utilcode/util/NotificationUtils.java | 0
.../com/blankj/utilcode/util/ObjectUtils.java | 0
.../com/blankj/utilcode/util/PathUtils.java | 0
.../blankj/utilcode/util/PermissionUtils.java | 0
.../com/blankj/utilcode/util/PhoneUtils.java | 0
.../blankj/utilcode/util/ProcessUtils.java | 0
.../blankj/utilcode/util/ReflectUtils.java | 0
.../com/blankj/utilcode/util/RegexUtils.java | 0
.../blankj/utilcode/util/ResourceUtils.java | 0
.../com/blankj/utilcode/util/RomUtils.java | 0
.../com/blankj/utilcode/util/SDCardUtils.java | 0
.../blankj/utilcode/util/SPStaticUtils.java | 0
.../com/blankj/utilcode/util/SPUtils.java | 0
.../com/blankj/utilcode/util/ScreenUtils.java | 0
.../blankj/utilcode/util/ServiceUtils.java | 0
.../com/blankj/utilcode/util/ShellUtils.java | 0
.../com/blankj/utilcode/util/SizeUtils.java | 0
.../blankj/utilcode/util/SnackbarUtils.java | 0
.../com/blankj/utilcode/util/SpanUtils.java | 0
.../com/blankj/utilcode/util/StringUtils.java | 0
.../com/blankj/utilcode/util/ThreadUtils.java | 419 ++++++++--------
.../blankj/utilcode/util/ThrowableUtils.java | 0
.../com/blankj/utilcode/util/TimeUtils.java | 4 +-
.../com/blankj/utilcode/util/ToastUtils.java | 7 +
.../com/blankj/utilcode/util/UriUtils.java | 0
.../java/com/blankj/utilcode/util/Utils.java | 82 ++--
.../blankj/utilcode/util/VibrateUtils.java | 0
.../com/blankj/utilcode/util/ViewUtils.java | 28 ++
.../com/blankj/utilcode/util/ZipUtils.java | 0
.../src/main/res/values-v21/styles.xml | 0
.../main/res/xml/util_code_provider_paths.xml | 0
.../com/blankj/utilcode/util/BaseTest.java | 42 ++
.../util/CacheDiskStaticUtilsTest.java | 0
.../utilcode/util/CacheDiskUtilsTest.java | 0
.../util/CacheDoubleStaticUtilsTest.java | 0
.../utilcode/util/CacheDoubleUtilsTest.java | 0
.../util/CacheMemoryStaticUtilsTest.java | 0
.../utilcode/util/CacheMemoryUtilsTest.java | 0
.../blankj/utilcode/util/CloneUtilsTest.java | 0
.../blankj/utilcode/util/ColorUtilsTest.java | 0
.../utilcode/util/ConvertUtilsTest.java | 0
.../blankj/utilcode/util/EncodeUtilsTest.java | 0
.../utilcode/util/EncryptUtilsTest.java | 0
.../blankj/utilcode/util/FileIOUtilsTest.java | 0
.../blankj/utilcode/util/FileUtilsTest.java | 0
.../blankj/utilcode/util/GsonUtilsTest.java | 0
.../blankj/utilcode/util/LogUtilsTest.java | 0
.../blankj/utilcode/util/ObjectUtilsTest.java | 0
.../blankj/utilcode/util/RegexUtilsTest.java | 0
.../blankj/utilcode/util/StringUtilsTest.java | 0
.../com/blankj/utilcode/util/TestConfig.java | 0
.../blankj/utilcode/util/ThreadUtilsTest.java | 0
.../blankj/utilcode/util/TimeUtilsTest.java | 0
.../blankj/utilcode/util/ZipUtilsTest.java | 0
.../util/reflect/PrivateConstructors.java | 0
.../util/reflect/ReflectUtilsTest.java | 0
.../blankj/utilcode/util/reflect/Test1.java | 0
.../blankj/utilcode/util/reflect/Test10.java | 0
.../blankj/utilcode/util/reflect/Test2.java | 0
.../blankj/utilcode/util/reflect/Test3.java | 0
.../blankj/utilcode/util/reflect/Test4.java | 0
.../blankj/utilcode/util/reflect/Test5.java | 0
.../blankj/utilcode/util/reflect/Test6.java | 0
.../blankj/utilcode/util/reflect/Test7.java | 0
.../blankj/utilcode/util/reflect/Test8.java | 0
.../blankj/utilcode/util/reflect/Test9.java | 0
.../reflect/TestHierarchicalMethodsBase.java | 0
.../TestHierarchicalMethodsSubclass.java | 0
.../util/reflect/TestPrivateStaticFinal.java | 0
.../utilcode}/src/test/res/encrypt/MD5.txt | 0
.../utilcode}/src/test/res/file/GBK.txt | 0
.../utilcode}/src/test/res/file/UTF16BE.txt | Bin
.../utilcode}/src/test/res/file/UTF8.txt | 0
.../utilcode}/src/test/res/file/Unicode.txt | Bin
.../src/test/res/file/recuresive/UTF8.txt | 0
.../utilcode}/src/test/res/zip/test.txt | 0
.../src/test/res/zip/testDir/test.txt | 0
.../res/zip/\346\265\213\350\257\225.txt" | 0
.../\346\265\213\350\257\225.txt" | 0
plugin/api-gradle-plugin/.gitignore | 1 +
plugin/api-gradle-plugin/CHANGELOG.md | 4 +
plugin/api-gradle-plugin/build.gradle | 66 +++
.../api-gradle-plugin}/project.properties | 6 +-
.../com/blankj/api/ApiClassVisitor.groovy | 69 +++
.../java/com/blankj/api/ApiExtension.groovy | 5 +
.../main/java/com/blankj/api/ApiInject.groovy | 31 ++
.../main/java/com/blankj/api/ApiPlugin.groovy | 28 ++
.../main/java/com/blankj/api/ApiScan.groovy | 45 ++
.../java/com/blankj/api/ApiTransform.groovy | 103 ++--
.../blankj/api/ApiUtilsClassVisitor.groovy | 62 +++
.../main/java/com/blankj/api/Config.groovy | 19 +
.../java/com/blankj/util/JsonUtils.groovy | 0
.../main/java/com/blankj/util/LogUtils.groovy | 34 ++
.../main/java/com/blankj/util/ZipUtils.java | 0
.../src/test/java/com/blankj/api/Test.java | 133 +++++
.../com/blankj/utilcode/util/ApiUtils.java | 125 +++++
plugin/bus-gradle-plugin/.gitignore | 1 +
.../bus-gradle-plugin}/CHANGELOG.md | 2 +-
.../bus-gradle-plugin}/build.gradle | 19 +-
plugin/bus-gradle-plugin/project.properties | 9 +
.../com/blankj/bus/BusClassVisitor.groovy | 54 +++
.../java/com/blankj/bus/BusExtension.groovy | 0
.../main/java/com/blankj/bus/BusInject.groovy | 31 ++
.../main/java/com/blankj/bus/BusPlugin.groovy | 5 +-
.../main/java/com/blankj/bus/BusScan.groovy | 44 ++
.../java/com/blankj/bus/BusTransform.groovy | 35 +-
.../blankj/bus/BusUtilsClassVisitor.groovy | 62 +++
.../main/java/com/blankj/bus/Config.groovy | 3 +-
.../java/com/blankj/util/JsonUtils.groovy | 21 +
.../main/java/com/blankj/util/LogUtils.groovy | 0
.../main/java/com/blankj/util/ZipUtils.java | 453 ++++++++++++++++++
settings.gradle | 4 +-
subutil/app/build.gradle | 8 -
subutil/export/build.gradle | 3 -
subutil/lib/build.gradle | 28 --
subutil/pkg/build.gradle | 9 -
utilcode/app/build.gradle | 8 -
utilcode/export/build.gradle | 3 -
utilcode/lib/.gitignore | 2 -
utilcode/lib/build.gradle | 26 -
.../com/blankj/utilcode/util/BaseTest.java | 230 ---------
utilcode/pkg/build.gradle | 9 -
485 files changed, 3166 insertions(+), 1856 deletions(-)
rename {launcher => app/launcher}/app/.gitignore (100%)
create mode 100644 app/launcher/app/build.gradle
rename {launcher => app/launcher}/app/proguard-rules.pro (100%)
rename {launcher => app/launcher}/app/src/main/AndroidManifest.xml (93%)
create mode 100644 app/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
rename {launcher => app/launcher}/pkg/.gitignore (100%)
create mode 100644 app/launcher/pkg/build.gradle
rename {launcher => app/launcher}/pkg/proguard-rules.pro (100%)
create mode 100644 app/launcher/pkg/src/main/AndroidManifest.xml
rename {launcher/app/src/main/java/com/blankj/launcher/app => app/launcher/pkg/src/main/java/com/blankj/launcher/pkg}/LauncherApp.java (90%)
rename {subutil => app/main}/app/.gitignore (100%)
create mode 100644 app/main/app/build.gradle
rename {subutil => app/main}/app/proguard-rules.pro (100%)
create mode 100644 app/main/app/src/main/AndroidManifest.xml
create mode 100644 app/main/app/src/main/java/com/blankj/main/app/MainApp.java
rename {subutil/export => app/main/pkg}/.gitignore (100%)
create mode 100644 app/main/pkg/build.gradle
rename {subutil/export => app/main/pkg}/proguard-rules.pro (100%)
rename {launcher => app/main}/pkg/src/main/AndroidManifest.xml (89%)
rename {launcher/pkg/src/main/java/com/blankj/launcher => app/main/pkg/src/main/java/com/blankj/main}/pkg/MainActivity.kt (83%)
rename {launcher/pkg/src/main/java/com/blankj/launcher => app/main/pkg/src/main/java/com/blankj/main}/pkg/SplashActivity.kt (97%)
rename {launcher => app/main}/pkg/src/main/res/layout/activity_main.xml (100%)
rename {launcher => app/main}/pkg/src/main/res/values/strings.xml (100%)
rename {subutil/lib => app/mock}/.gitignore (100%)
create mode 100644 app/mock/build.gradle
rename {subutil/pkg => app/mock}/proguard-rules.pro (100%)
create mode 100644 app/mock/src/main/AndroidManifest.xml
create mode 100644 app/mock/src/main/java/com/blankj/mock/api/SubUtilMockApi.java
create mode 100644 app/mock/src/main/java/com/blankj/mock/api/UtilCodeMockApi.java
rename {subutil/pkg => app/subutil/app}/.gitignore (100%)
create mode 100644 app/subutil/app/build.gradle
rename {utilcode => app/subutil}/app/proguard-rules.pro (100%)
rename {subutil => app/subutil}/app/src/main/AndroidManifest.xml (100%)
rename {subutil => app/subutil}/app/src/main/java/com/blankj/subutil/app/SubUtilApp.kt (100%)
rename {utilcode/app => app/subutil/export}/.gitignore (100%)
create mode 100644 app/subutil/export/build.gradle
rename {utilcode => app/subutil}/export/proguard-rules.pro (100%)
rename {subutil => app/subutil}/export/src/main/AndroidManifest.xml (100%)
rename {subutil => app/subutil}/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java (54%)
rename {utilcode/export => app/subutil/pkg}/.gitignore (100%)
create mode 100644 app/subutil/pkg/build.gradle
rename {utilcode => app/subutil}/pkg/proguard-rules.pro (100%)
rename {subutil => app/subutil}/pkg/src/main/AndroidManifest.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/assets/test_install_silent (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/Config.kt (100%)
rename {subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl => app/subutil/pkg/src/main/java/com/blankj/subutil/pkg}/SubUtilApiImpl.java (69%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt (97%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/country/CountryActivity.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/dangerous/DangerousActivity.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationService.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/java/com/blankj/subutil/pkg/helper/PermissionHelper.kt (100%)
rename {subutil => app/subutil}/pkg/src/main/res/layout/activity_app_store.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/res/layout/activity_country.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/res/layout/activity_dangerous.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/res/layout/activity_location.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/res/layout/activity_pinyin.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/res/layout/activity_util_sub.xml (100%)
rename {subutil => app/subutil}/pkg/src/main/res/values/strings.xml (100%)
rename {utilcode/pkg => app/utilcode/app}/.gitignore (100%)
create mode 100644 app/utilcode/app/build.gradle
create mode 100644 app/utilcode/app/proguard-rules.pro
rename {utilcode => app/utilcode}/app/src/main/AndroidManifest.xml (89%)
rename {utilcode => app/utilcode}/app/src/main/java/com/blankj/utilcode/app/UtilCodeApp.kt (100%)
create mode 100644 app/utilcode/export/.gitignore
create mode 100644 app/utilcode/export/build.gradle
create mode 100644 app/utilcode/export/proguard-rules.pro
rename {utilcode => app/utilcode}/export/src/main/AndroidManifest.xml (100%)
create mode 100644 app/utilcode/export/src/main/java/com/blankj/utilcode/export/api/UtilCodeApi.java
create mode 100644 app/utilcode/pkg/.gitignore
create mode 100644 app/utilcode/pkg/build.gradle
create mode 100644 app/utilcode/pkg/proguard-rules.pro
rename {utilcode => app/utilcode}/pkg/src/main/AndroidManifest.xml (97%)
rename {utilcode => app/utilcode}/pkg/src/main/assets/fonts/dnmbhs.ttf (100%)
rename {utilcode => app/utilcode}/pkg/src/main/assets/test/sub/test.txt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/assets/test/test.txt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/assets/test_install (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/Config.kt (100%)
create mode 100644 app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/UtilCodeApiImpl.java
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt (96%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt (100%)
create mode 100644 app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/ApiActivity.kt
create mode 100644 app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/export/OtherModuleApi.java
create mode 100644 app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/pkg/OtherPkgApiImpl.java
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt (97%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt (88%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/language/LanguageActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/java/com/blankj/utilcode/pkg/helper/PermissionHelper.kt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/anim/fade_in_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/anim/fade_out_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/anim/slide_in_bottom_200.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/anim/slide_in_right_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/anim/slide_out_bottom_200.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/anim/slide_out_left_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/animator/fragment_slide_left_enter.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/animator/fragment_slide_left_exit.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/animator/fragment_slide_right_enter.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/animator/fragment_slide_right_exit.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/activity_activity_icon.png (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/activity_activity_logo.png (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/bar_status_custom.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/bar_status_nav_alpha.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/bar_status_nav_color.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/bar_status_nav_custom.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/bar_status_nav_image.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/click_shape_round_rect.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/fragment_nav.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/image_lena.jpg (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/snackbar_custom_bg.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/span_cheetah.png (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/span_shape_block_high.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/span_shape_block_low.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/drawable/toast_shape_round_rect.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_activity.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_activity_sub.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_adaptscreen.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_adaptscreen_close.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_adaptscreen_height.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_adaptscreen_width.xml (100%)
create mode 100644 app/utilcode/pkg/src/main/res/layout/activity_api.xml
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_app.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_nav.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_notification.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status_alpha.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status_color.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status_drawer.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status_fragment.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status_image_view.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bar_status_swipe_back.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_brightness.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bus.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_bus_remote.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_clean.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_click.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_device.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_flashlight.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_fragment.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_image.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_keyboard.xml (98%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_language.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_log.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_metadata.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_network.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_path.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_permission.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_phone.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_process.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_reflect.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_resource.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_rom.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_screen.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_sdcard.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_snackbar.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_span.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_spstatic.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_toast.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_util_core.xml (97%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/activity_vibrate.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/dialog_fragment.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/dialog_keyboard.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/dialog_screen.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/dialog_toast.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_bar_status_alpha.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_bar_status_color.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_bar_status_custom.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_bar_status_image_view.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_child.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_container.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/fragment_root.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/item_image.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/item_image_header.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/snackbar_custom.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/layout/toast_custom.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/menu/navigation_fragment.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/menu/navigation_status_bar.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/raw/test.txt (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/transition/explode_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/transition/fade_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/transition/slide_1000.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/values-en-rUS/strings.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/values-zh-rCN/strings.xml (100%)
rename {utilcode => app/utilcode}/pkg/src/main/res/values/strings.xml (98%)
rename {utilcode => app/utilcode}/pkg/src/main/res/values/styles.xml (100%)
rename gradle/config/configApp.gradle => buildApp.gradle (63%)
create mode 100644 buildLib.gradle
create mode 100644 buildSrc/src/main/groovy/BuildConfig.groovy
create mode 100644 buildSrc/src/main/groovy/Config.groovy
create mode 100644 buildSrc/src/main/groovy/DepConfig.groovy
create mode 100644 buildSrc/src/main/groovy/GLog.groovy
rename buildSrc/src/main/{groovy => java}/com/blankj/plugin/FormatUtils.groovy (100%)
rename buildSrc/src/main/{groovy => java}/com/blankj/plugin/ReadmeCorePlugin.groovy (100%)
rename buildSrc/src/main/{groovy => java}/com/blankj/plugin/ReadmeExtension.groovy (100%)
rename buildSrc/src/main/{groovy => java}/com/blankj/plugin/ReadmeSubPlugin.groovy (97%)
delete mode 100755 bus-gradle-plugin/.gitignore
delete mode 100755 bus-gradle-plugin/src/main/java/com/blankj/bus/BusInject.groovy
delete mode 100755 bus-gradle-plugin/src/main/java/com/blankj/bus/BusScan.groovy
delete mode 100644 bus-gradle-plugin/src/main/java/com/blankj/util/JavassistUtils.groovy
delete mode 100755 bus-gradle-plugin/src/main/java/com/blankj/utilcode/util/BusUtils.java
delete mode 100644 bus-gradle-plugin/src/test/java/com/blankj/bus/BusScanTest.groovy
delete mode 100755 bus-gradle-plugin/src/test/java/com/blankj/bus/BusTest.java
delete mode 100644 gradle/config/config.gradle
delete mode 100644 gradle/config/configBuild.gradle
delete mode 100644 gradle/config/configLib.gradle
delete mode 100644 gradle/util/utils.gradle
delete mode 100644 launcher/app/build.gradle
delete mode 100644 launcher/pkg/build.gradle
create mode 100644 lib/subutil/.gitignore
rename {subutil => lib/subutil}/README-CN.md (100%)
rename {subutil => lib/subutil}/README.md (100%)
create mode 100644 lib/subutil/build.gradle
rename {subutil/lib => lib/subutil}/proguard-rules.pro (100%)
rename {subutil/lib => lib/subutil}/src/main/AndroidManifest.xml (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/AppStoreUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/BitUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/CameraUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/ClipboardUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/CoordinateUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/CountryUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/DangerousUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/GlideUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/HttpsUtil.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/LocationUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/LunarUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/PinyinUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/RetrofitUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/Chain.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/Headers.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/HttpUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/Interceptor.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/Request.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/Response.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/ResponseCallback.java (100%)
rename {subutil/lib => lib/subutil}/src/main/java/com/blankj/subutil/util/http/SSLConfig.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/BaseTest.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/ClipboardUtilsTest.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/CoordinateUtilsTest.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/LunarUtilsTest.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/TestConfig.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/TestUtils.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/http/HttpUtilsTest.java (100%)
rename {subutil/lib => lib/subutil}/src/test/java/com/blankj/subutil/util/http/UserBean.java (100%)
create mode 100644 lib/utilcode/.gitignore
rename {utilcode => lib/utilcode}/README-CN.md (100%)
rename {utilcode => lib/utilcode}/README-STATIC-BUS.md (98%)
rename {utilcode => lib/utilcode}/README.md (100%)
create mode 100644 lib/utilcode/build.gradle
rename {utilcode/lib => lib/utilcode}/proguard-rules.pro (100%)
rename {utilcode/lib => lib/utilcode}/project.properties (100%)
rename {utilcode/lib => lib/utilcode}/src/main/AndroidManifest.xml (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/constant/CacheConstants.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/constant/RegexConstants.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/constant/TimeConstants.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ActivityUtils.java (99%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java (100%)
create mode 100644 lib/utilcode/src/main/java/com/blankj/utilcode/util/ApiUtils.java
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/AppUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/BarUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java (100%)
create mode 100644 lib/utilcode/src/main/java/com/blankj/utilcode/util/BusUtils.java
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CacheDiskStaticUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CacheDiskUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CacheDoubleStaticUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CacheDoubleUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CacheMemoryStaticUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CacheMemoryUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CleanUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ClickUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CloneUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CloseUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ColorUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ConvertUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/CrashUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/DeviceUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/EncodeUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/EncryptUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/FileIOUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/FileUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/FlashlightUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/FragmentUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/GsonUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ImageUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/IntentUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/JsonUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/KeyboardUtils.java (84%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/LanguageUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/LogUtils.java (98%)
rename utilcode/lib/src/main/java/com/blankj/utilcode/util/BusUtils.java => lib/utilcode/src/main/java/com/blankj/utilcode/util/MessengerUtils.java (72%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/MetaDataUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/NetworkUtils.java (99%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/NotificationUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ObjectUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/PathUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/PermissionUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/PhoneUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ProcessUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ReflectUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/RegexUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ResourceUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/RomUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/SDCardUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/SPStaticUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/SPUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ScreenUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ServiceUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ShellUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/SizeUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/SnackbarUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/SpanUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/StringUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ThreadUtils.java (86%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ThrowableUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/TimeUtils.java (99%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ToastUtils.java (98%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/UriUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/Utils.java (88%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/VibrateUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ViewUtils.java (68%)
rename {utilcode/lib => lib/utilcode}/src/main/java/com/blankj/utilcode/util/ZipUtils.java (100%)
rename {utilcode/lib => lib/utilcode}/src/main/res/values-v21/styles.xml (100%)
rename {utilcode/lib => lib/utilcode}/src/main/res/xml/util_code_provider_paths.xml (100%)
create mode 100644 lib/utilcode/src/test/java/com/blankj/utilcode/util/BaseTest.java
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CacheDiskStaticUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CacheDiskUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CacheDoubleStaticUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CacheDoubleUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CacheMemoryStaticUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CacheMemoryUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/CloneUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/ColorUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/ConvertUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/EncodeUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/EncryptUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/FileIOUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/FileUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/GsonUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/LogUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/ObjectUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/RegexUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/StringUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/TestConfig.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/ThreadUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/TimeUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/ZipUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/PrivateConstructors.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/ReflectUtilsTest.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test1.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test10.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test2.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test3.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test4.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test5.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test6.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test7.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test8.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/Test9.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/TestHierarchicalMethodsBase.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/TestHierarchicalMethodsSubclass.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/java/com/blankj/utilcode/util/reflect/TestPrivateStaticFinal.java (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/encrypt/MD5.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/file/GBK.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/file/UTF16BE.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/file/UTF8.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/file/Unicode.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/file/recuresive/UTF8.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/zip/test.txt (100%)
rename {utilcode/lib => lib/utilcode}/src/test/res/zip/testDir/test.txt (100%)
rename "utilcode/lib/src/test/res/zip/\346\265\213\350\257\225.txt" => "lib/utilcode/src/test/res/zip/\346\265\213\350\257\225.txt" (100%)
rename "utilcode/lib/src/test/res/zip/\346\265\213\350\257\225\346\226\207\344\273\266\345\244\271/\346\265\213\350\257\225.txt" => "lib/utilcode/src/test/res/zip/\346\265\213\350\257\225\346\226\207\344\273\266\345\244\271/\346\265\213\350\257\225.txt" (100%)
create mode 100755 plugin/api-gradle-plugin/.gitignore
create mode 100644 plugin/api-gradle-plugin/CHANGELOG.md
create mode 100755 plugin/api-gradle-plugin/build.gradle
rename {bus-gradle-plugin => plugin/api-gradle-plugin}/project.properties (66%)
create mode 100644 plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiClassVisitor.groovy
create mode 100755 plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiExtension.groovy
create mode 100755 plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiInject.groovy
create mode 100755 plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiPlugin.groovy
create mode 100755 plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiScan.groovy
rename bus-gradle-plugin/src/main/java/com/blankj/bus/BusTransformAsm.groovy => plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiTransform.groovy (50%)
create mode 100644 plugin/api-gradle-plugin/src/main/java/com/blankj/api/ApiUtilsClassVisitor.groovy
create mode 100755 plugin/api-gradle-plugin/src/main/java/com/blankj/api/Config.groovy
rename {bus-gradle-plugin => plugin/api-gradle-plugin}/src/main/java/com/blankj/util/JsonUtils.groovy (100%)
create mode 100755 plugin/api-gradle-plugin/src/main/java/com/blankj/util/LogUtils.groovy
rename {bus-gradle-plugin => plugin/api-gradle-plugin}/src/main/java/com/blankj/util/ZipUtils.java (100%)
create mode 100644 plugin/api-gradle-plugin/src/test/java/com/blankj/api/Test.java
create mode 100644 plugin/api-gradle-plugin/src/test/java/com/blankj/utilcode/util/ApiUtils.java
create mode 100755 plugin/bus-gradle-plugin/.gitignore
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/CHANGELOG.md (96%)
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/build.gradle (66%)
create mode 100644 plugin/bus-gradle-plugin/project.properties
create mode 100644 plugin/bus-gradle-plugin/src/main/java/com/blankj/bus/BusClassVisitor.groovy
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/src/main/java/com/blankj/bus/BusExtension.groovy (100%)
create mode 100755 plugin/bus-gradle-plugin/src/main/java/com/blankj/bus/BusInject.groovy
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/src/main/java/com/blankj/bus/BusPlugin.groovy (73%)
create mode 100755 plugin/bus-gradle-plugin/src/main/java/com/blankj/bus/BusScan.groovy
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/src/main/java/com/blankj/bus/BusTransform.groovy (77%)
create mode 100644 plugin/bus-gradle-plugin/src/main/java/com/blankj/bus/BusUtilsClassVisitor.groovy
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/src/main/java/com/blankj/bus/Config.groovy (90%)
create mode 100755 plugin/bus-gradle-plugin/src/main/java/com/blankj/util/JsonUtils.groovy
rename {bus-gradle-plugin => plugin/bus-gradle-plugin}/src/main/java/com/blankj/util/LogUtils.groovy (100%)
create mode 100755 plugin/bus-gradle-plugin/src/main/java/com/blankj/util/ZipUtils.java
delete mode 100644 subutil/app/build.gradle
delete mode 100644 subutil/export/build.gradle
delete mode 100644 subutil/lib/build.gradle
delete mode 100644 subutil/pkg/build.gradle
delete mode 100644 utilcode/app/build.gradle
delete mode 100644 utilcode/export/build.gradle
delete mode 100644 utilcode/lib/.gitignore
delete mode 100644 utilcode/lib/build.gradle
delete mode 100644 utilcode/lib/src/test/java/com/blankj/utilcode/util/BaseTest.java
delete mode 100644 utilcode/pkg/build.gradle
diff --git a/.gitignore b/.gitignore
index 193619553c..8a2a05788d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,8 @@
*.iml
-*__bus__.json
+__api__.json
+__bus__.json
.gradle
-/local.properties
+local.properties
.idea
.DS_Store
/build
@@ -9,4 +10,4 @@
.externalNativeBuild
/apk
*.phrof
-/busMaven
+/maven
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b0073cdd87..28396b5f80 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -90,7 +90,7 @@
* `18/06/13` 新增 CacheMemoryUtils 和 CacheDoubleUtils
* `18/06/12` 完善 FragmentUtils#add 和 replace 新增 tag
* `18/05/30` 完善 DeviceUtils#getMacAddress,发布 1.16.4 版本
-* `18/05/30` 修复 ToastUtils 在 targetSdkVersion 为 27 在 api 25 机器快速 show 两次崩溃的异常,发布 1.16.3 版本
+* `18/05/30` 修复 ToastUtils 在 targetSdkVersion 为 27 在 result 25 机器快速 show 两次崩溃的异常,发布 1.16.3 版本
* `18/05/29` 完善 TimeUtils 的 timeSpan 带符号位,ToastUtils 去除弱引用,发布 1.16.2 版本
* `18/05/25` 新增 AppUtils#registerAppStatusChangedListener 和 AppUtils#unregisterAppStatusChangedListener,发布 1.16.1 版本
* `18/05/22` 新增 ThreadUtils,发布 1.16.0 版本
diff --git a/README-CN.md b/README-CN.md
index c990ad0ade..426d0d6332 100644
--- a/README-CN.md
+++ b/README-CN.md
@@ -1,6 +1,6 @@
![logo][logo]
-[![auc][aucSvg]][auc] [![api][apiSvg]][api] [![build][buildSvg]][build] [![License][licenseSvg]][license]
+[![auc][aucSvg]][auc] [![result][apiSvg]][result] [![build][buildSvg]][build] [![License][licenseSvg]][license]
## [README of English][readme]
@@ -45,7 +45,7 @@
[auc]: https://github.com/Blankj/AndroidUtilCode
[apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
-[api]: https://android-arsenal.com/api?level=14
+[result]: https://android-arsenal.com/result?level=14
[buildSvg]: https://travis-ci.org/Blankj/AndroidUtilCode.svg?branch=master
[build]: https://travis-ci.org/Blankj/AndroidUtilCode
diff --git a/README.md b/README.md
index 5e546f9039..9d89c6f095 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
![logo][logo]
-[![auc][aucSvg]][auc] [![api][apiSvg]][api] [![build][buildSvg]][build] [![License][licenseSvg]][license]
+[![auc][aucSvg]][auc] [![result][apiSvg]][result] [![build][buildSvg]][build] [![License][licenseSvg]][license]
## [README of Chinese][readme-cn]
@@ -45,7 +45,7 @@ If this project helps you a lot and you want to support the project's developmen
[auc]: https://github.com/Blankj/AndroidUtilCode
[apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
-[api]: https://android-arsenal.com/api?level=14
+[result]: https://android-arsenal.com/result?level=14
[buildSvg]: https://travis-ci.org/Blankj/AndroidUtilCode.svg?branch=master
[build]: https://travis-ci.org/Blankj/AndroidUtilCode
diff --git a/launcher/app/.gitignore b/app/launcher/app/.gitignore
similarity index 100%
rename from launcher/app/.gitignore
rename to app/launcher/app/.gitignore
diff --git a/app/launcher/app/build.gradle b/app/launcher/app/build.gradle
new file mode 100644
index 0000000000..7e520a91d6
--- /dev/null
+++ b/app/launcher/app/build.gradle
@@ -0,0 +1,8 @@
+apply {
+ from "${rootDir.path}/buildApp.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ api Config.depConfig.launcher_pkg.dep
+}
\ No newline at end of file
diff --git a/launcher/app/proguard-rules.pro b/app/launcher/app/proguard-rules.pro
similarity index 100%
rename from launcher/app/proguard-rules.pro
rename to app/launcher/app/proguard-rules.pro
diff --git a/launcher/app/src/main/AndroidManifest.xml b/app/launcher/app/src/main/AndroidManifest.xml
similarity index 93%
rename from launcher/app/src/main/AndroidManifest.xml
rename to app/launcher/app/src/main/AndroidManifest.xml
index e024a7bd85..b683051e68 100644
--- a/launcher/app/src/main/AndroidManifest.xml
+++ b/app/launcher/app/src/main/AndroidManifest.xml
@@ -10,7 +10,7 @@
android:theme="@style/AppTheme">
diff --git a/app/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java b/app/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
new file mode 100644
index 0000000000..c9a283b6f3
--- /dev/null
+++ b/app/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
@@ -0,0 +1,15 @@
+package com.blankj.launcher.app;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2016/10/12
+ * desc : app about launcher
+ *
+ */
+public class LauncherApp extends com.blankj.launcher.pkg.LauncherApp {
+
+}
+
+
diff --git a/launcher/pkg/.gitignore b/app/launcher/pkg/.gitignore
similarity index 100%
rename from launcher/pkg/.gitignore
rename to app/launcher/pkg/.gitignore
diff --git a/app/launcher/pkg/build.gradle b/app/launcher/pkg/build.gradle
new file mode 100644
index 0000000000..bb6eb4a6ac
--- /dev/null
+++ b/app/launcher/pkg/build.gradle
@@ -0,0 +1,8 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+
+}
\ No newline at end of file
diff --git a/launcher/pkg/proguard-rules.pro b/app/launcher/pkg/proguard-rules.pro
similarity index 100%
rename from launcher/pkg/proguard-rules.pro
rename to app/launcher/pkg/proguard-rules.pro
diff --git a/app/launcher/pkg/src/main/AndroidManifest.xml b/app/launcher/pkg/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..275b3c25df
--- /dev/null
+++ b/app/launcher/pkg/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
diff --git a/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java b/app/launcher/pkg/src/main/java/com/blankj/launcher/pkg/LauncherApp.java
similarity index 90%
rename from launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
rename to app/launcher/pkg/src/main/java/com/blankj/launcher/pkg/LauncherApp.java
index 990f6d47a5..501b248c43 100644
--- a/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
+++ b/app/launcher/pkg/src/main/java/com/blankj/launcher/pkg/LauncherApp.java
@@ -1,4 +1,4 @@
-package com.blankj.launcher.app;
+package com.blankj.launcher.pkg;
import android.content.Context;
@@ -9,7 +9,7 @@
* author: Blankj
* blog : http://blankj.com
* time : 2016/10/12
- * desc : app about utils
+ * desc :
*
*/
public class LauncherApp extends CommonApplication {
diff --git a/subutil/app/.gitignore b/app/main/app/.gitignore
similarity index 100%
rename from subutil/app/.gitignore
rename to app/main/app/.gitignore
diff --git a/app/main/app/build.gradle b/app/main/app/build.gradle
new file mode 100644
index 0000000000..98a334937b
--- /dev/null
+++ b/app/main/app/build.gradle
@@ -0,0 +1,8 @@
+apply {
+ from "${rootDir.path}/buildApp.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation Config.depConfig.main_pkg.dep
+}
\ No newline at end of file
diff --git a/subutil/app/proguard-rules.pro b/app/main/app/proguard-rules.pro
similarity index 100%
rename from subutil/app/proguard-rules.pro
rename to app/main/app/proguard-rules.pro
diff --git a/app/main/app/src/main/AndroidManifest.xml b/app/main/app/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..5ccc1079c0
--- /dev/null
+++ b/app/main/app/src/main/AndroidManifest.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/main/app/src/main/java/com/blankj/main/app/MainApp.java b/app/main/app/src/main/java/com/blankj/main/app/MainApp.java
new file mode 100644
index 0000000000..f7dc2fe25b
--- /dev/null
+++ b/app/main/app/src/main/java/com/blankj/main/app/MainApp.java
@@ -0,0 +1,35 @@
+package com.blankj.main.app;
+
+import android.content.Context;
+
+import com.blankj.lib.common.CommonApplication;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2016/10/12
+ * desc :
+ *
+ */
+public class MainApp extends CommonApplication {
+
+ private static MainApp sInstance;
+
+ public static MainApp getInstance() {
+ return sInstance;
+ }
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ super.attachBaseContext(base);
+ }
+
+ @Override
+ public void onCreate() {
+ super.onCreate();
+ sInstance = this;
+ }
+}
+
+
diff --git a/subutil/export/.gitignore b/app/main/pkg/.gitignore
similarity index 100%
rename from subutil/export/.gitignore
rename to app/main/pkg/.gitignore
diff --git a/app/main/pkg/build.gradle b/app/main/pkg/build.gradle
new file mode 100644
index 0000000000..69508fd31b
--- /dev/null
+++ b/app/main/pkg/build.gradle
@@ -0,0 +1,7 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+}
\ No newline at end of file
diff --git a/subutil/export/proguard-rules.pro b/app/main/pkg/proguard-rules.pro
similarity index 100%
rename from subutil/export/proguard-rules.pro
rename to app/main/pkg/proguard-rules.pro
diff --git a/launcher/pkg/src/main/AndroidManifest.xml b/app/main/pkg/src/main/AndroidManifest.xml
similarity index 89%
rename from launcher/pkg/src/main/AndroidManifest.xml
rename to app/main/pkg/src/main/AndroidManifest.xml
index caf3f08ebd..f24a83ec2a 100644
--- a/launcher/pkg/src/main/AndroidManifest.xml
+++ b/app/main/pkg/src/main/AndroidManifest.xml
@@ -1,5 +1,5 @@
+ package="com.blankj.main.pkg">
BusUtils.postStatic("CoreUtilActivity#start", this)
- R.id.launcherMainSubUtilBtn -> BusUtils.postStatic("SubUtilActivity#start", this)
+ R.id.launcherMainCoreUtilBtn -> {
+ ApiUtils.getApi(UtilCodeApi::class.java).startUtilCodeActivity(this)
+ }
+ R.id.launcherMainSubUtilBtn -> {
+ ApiUtils.getApi(SubUtilApi::class.java).startSubUtilActivity(this)
+ }
}
}
diff --git a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt b/app/main/pkg/src/main/java/com/blankj/main/pkg/SplashActivity.kt
similarity index 97%
rename from launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt
rename to app/main/pkg/src/main/java/com/blankj/main/pkg/SplashActivity.kt
index 81f8dd019d..bc9a4437f5 100644
--- a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt
+++ b/app/main/pkg/src/main/java/com/blankj/main/pkg/SplashActivity.kt
@@ -1,4 +1,4 @@
-package com.blankj.launcher.pkg
+package com.blankj.main.pkg
import android.os.Bundle
import android.view.View
diff --git a/launcher/pkg/src/main/res/layout/activity_main.xml b/app/main/pkg/src/main/res/layout/activity_main.xml
similarity index 100%
rename from launcher/pkg/src/main/res/layout/activity_main.xml
rename to app/main/pkg/src/main/res/layout/activity_main.xml
diff --git a/launcher/pkg/src/main/res/values/strings.xml b/app/main/pkg/src/main/res/values/strings.xml
similarity index 100%
rename from launcher/pkg/src/main/res/values/strings.xml
rename to app/main/pkg/src/main/res/values/strings.xml
diff --git a/subutil/lib/.gitignore b/app/mock/.gitignore
similarity index 100%
rename from subutil/lib/.gitignore
rename to app/mock/.gitignore
diff --git a/app/mock/build.gradle b/app/mock/build.gradle
new file mode 100644
index 0000000000..c60dba9bbc
--- /dev/null
+++ b/app/mock/build.gradle
@@ -0,0 +1,11 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ for (config in Config.depConfig) {
+ if (config.key.endsWith("_export")) {
+ api config.value.dep
+ }
+ }
+}
\ No newline at end of file
diff --git a/subutil/pkg/proguard-rules.pro b/app/mock/proguard-rules.pro
similarity index 100%
rename from subutil/pkg/proguard-rules.pro
rename to app/mock/proguard-rules.pro
diff --git a/app/mock/src/main/AndroidManifest.xml b/app/mock/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..8c0f9aa047
--- /dev/null
+++ b/app/mock/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/app/mock/src/main/java/com/blankj/mock/api/SubUtilMockApi.java b/app/mock/src/main/java/com/blankj/mock/api/SubUtilMockApi.java
new file mode 100644
index 0000000000..fae5644efb
--- /dev/null
+++ b/app/mock/src/main/java/com/blankj/mock/api/SubUtilMockApi.java
@@ -0,0 +1,25 @@
+package com.blankj.mock.api;
+
+import android.content.Context;
+
+import com.blankj.subutil.export.api.SubUtilApi;
+import com.blankj.utilcode.util.ApiUtils;
+import com.blankj.utilcode.util.ToastUtils;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/07/10
+ * desc :
+ *
+ */
+@ApiUtils.Api(isDebug = true)
+public class SubUtilMockApi extends SubUtilApi {
+
+ @Override
+ public void startSubUtilActivity(Context context) {
+ ToastUtils.showShort("startSubUtilActivity");
+ }
+
+}
diff --git a/app/mock/src/main/java/com/blankj/mock/api/UtilCodeMockApi.java b/app/mock/src/main/java/com/blankj/mock/api/UtilCodeMockApi.java
new file mode 100644
index 0000000000..921488d91d
--- /dev/null
+++ b/app/mock/src/main/java/com/blankj/mock/api/UtilCodeMockApi.java
@@ -0,0 +1,25 @@
+package com.blankj.mock.api;
+
+import android.content.Context;
+
+import com.blankj.utilcode.export.api.UtilCodeApi;
+import com.blankj.utilcode.util.ApiUtils;
+import com.blankj.utilcode.util.ToastUtils;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/07/10
+ * desc :
+ *
+ */
+@ApiUtils.Api(isDebug = true)
+public class UtilCodeMockApi extends UtilCodeApi {
+
+ @Override
+ public void startUtilCodeActivity(Context context) {
+ ToastUtils.showShort("startUtilCodeActivity");
+ }
+
+}
diff --git a/subutil/pkg/.gitignore b/app/subutil/app/.gitignore
similarity index 100%
rename from subutil/pkg/.gitignore
rename to app/subutil/app/.gitignore
diff --git a/app/subutil/app/build.gradle b/app/subutil/app/build.gradle
new file mode 100644
index 0000000000..a42a34181a
--- /dev/null
+++ b/app/subutil/app/build.gradle
@@ -0,0 +1,8 @@
+apply {
+ from "${rootDir.path}/buildApp.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation Config.depConfig.subutil_pkg.dep
+}
\ No newline at end of file
diff --git a/utilcode/app/proguard-rules.pro b/app/subutil/app/proguard-rules.pro
similarity index 100%
rename from utilcode/app/proguard-rules.pro
rename to app/subutil/app/proguard-rules.pro
diff --git a/subutil/app/src/main/AndroidManifest.xml b/app/subutil/app/src/main/AndroidManifest.xml
similarity index 100%
rename from subutil/app/src/main/AndroidManifest.xml
rename to app/subutil/app/src/main/AndroidManifest.xml
diff --git a/subutil/app/src/main/java/com/blankj/subutil/app/SubUtilApp.kt b/app/subutil/app/src/main/java/com/blankj/subutil/app/SubUtilApp.kt
similarity index 100%
rename from subutil/app/src/main/java/com/blankj/subutil/app/SubUtilApp.kt
rename to app/subutil/app/src/main/java/com/blankj/subutil/app/SubUtilApp.kt
diff --git a/utilcode/app/.gitignore b/app/subutil/export/.gitignore
similarity index 100%
rename from utilcode/app/.gitignore
rename to app/subutil/export/.gitignore
diff --git a/app/subutil/export/build.gradle b/app/subutil/export/build.gradle
new file mode 100644
index 0000000000..691e76652d
--- /dev/null
+++ b/app/subutil/export/build.gradle
@@ -0,0 +1,7 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ api Config.depConfig.lib_common.dep
+}
\ No newline at end of file
diff --git a/utilcode/export/proguard-rules.pro b/app/subutil/export/proguard-rules.pro
similarity index 100%
rename from utilcode/export/proguard-rules.pro
rename to app/subutil/export/proguard-rules.pro
diff --git a/subutil/export/src/main/AndroidManifest.xml b/app/subutil/export/src/main/AndroidManifest.xml
similarity index 100%
rename from subutil/export/src/main/AndroidManifest.xml
rename to app/subutil/export/src/main/AndroidManifest.xml
diff --git a/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java b/app/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
similarity index 54%
rename from subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
rename to app/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
index cbc9e35c08..f0a7339fe4 100644
--- a/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
+++ b/app/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
@@ -2,6 +2,9 @@
import android.content.Context;
+import com.blankj.utilcode.util.ApiUtils;
+
+
/**
*
* author: blankj
@@ -10,7 +13,8 @@
* desc :
*
*/
-public interface SubUtilApi {
+public abstract class SubUtilApi extends ApiUtils.BaseApi {
+
+ public abstract void startSubUtilActivity(Context context);
- void startSubUtilActivity(Context context);
}
diff --git a/utilcode/export/.gitignore b/app/subutil/pkg/.gitignore
similarity index 100%
rename from utilcode/export/.gitignore
rename to app/subutil/pkg/.gitignore
diff --git a/app/subutil/pkg/build.gradle b/app/subutil/pkg/build.gradle
new file mode 100644
index 0000000000..69508fd31b
--- /dev/null
+++ b/app/subutil/pkg/build.gradle
@@ -0,0 +1,7 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+}
\ No newline at end of file
diff --git a/utilcode/pkg/proguard-rules.pro b/app/subutil/pkg/proguard-rules.pro
similarity index 100%
rename from utilcode/pkg/proguard-rules.pro
rename to app/subutil/pkg/proguard-rules.pro
diff --git a/subutil/pkg/src/main/AndroidManifest.xml b/app/subutil/pkg/src/main/AndroidManifest.xml
similarity index 100%
rename from subutil/pkg/src/main/AndroidManifest.xml
rename to app/subutil/pkg/src/main/AndroidManifest.xml
diff --git a/subutil/pkg/src/main/assets/test_install_silent b/app/subutil/pkg/src/main/assets/test_install_silent
similarity index 100%
rename from subutil/pkg/src/main/assets/test_install_silent
rename to app/subutil/pkg/src/main/assets/test_install_silent
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/Config.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/Config.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/Config.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/Config.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/SubUtilApiImpl.java
similarity index 69%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/SubUtilApiImpl.java
index 73d8d06347..1071763afd 100644
--- a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java
+++ b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/SubUtilApiImpl.java
@@ -1,19 +1,21 @@
-package com.blankj.subutil.pkg.impl;
+package com.blankj.subutil.pkg;
import android.content.Context;
import com.blankj.subutil.export.api.SubUtilApi;
import com.blankj.subutil.pkg.feature.SubUtilActivity;
+import com.blankj.utilcode.util.ApiUtils;
/**
*
* author: blankj
* blog : http://blankj.com
- * time : 2019/06/09
+ * time : 2019/07/02
* desc :
*
*/
-public class SubUtilApiImpl implements SubUtilApi {
+@ApiUtils.Api
+public class SubUtilApiImpl extends SubUtilApi {
@Override
public void startSubUtilActivity(Context context) {
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt
similarity index 97%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt
index 7091e5aeba..ac681b1324 100644
--- a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt
+++ b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/SubUtilActivity.kt
@@ -25,7 +25,6 @@ import kotlinx.android.synthetic.main.activity_util_sub.*
class SubUtilActivity : CommonTitleActivity() {
companion object {
- @BusUtils.Subscribe(name = "SubUtilActivity#start")
fun start(context: Context) {
val starter = Intent(context, SubUtilActivity::class.java)
context.startActivity(starter)
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/country/CountryActivity.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/country/CountryActivity.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/country/CountryActivity.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/country/CountryActivity.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/dangerous/DangerousActivity.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/dangerous/DangerousActivity.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/dangerous/DangerousActivity.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/dangerous/DangerousActivity.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationService.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationService.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationService.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationService.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/DialogHelper.kt
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/PermissionHelper.kt b/app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/PermissionHelper.kt
similarity index 100%
rename from subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/PermissionHelper.kt
rename to app/subutil/pkg/src/main/java/com/blankj/subutil/pkg/helper/PermissionHelper.kt
diff --git a/subutil/pkg/src/main/res/layout/activity_app_store.xml b/app/subutil/pkg/src/main/res/layout/activity_app_store.xml
similarity index 100%
rename from subutil/pkg/src/main/res/layout/activity_app_store.xml
rename to app/subutil/pkg/src/main/res/layout/activity_app_store.xml
diff --git a/subutil/pkg/src/main/res/layout/activity_country.xml b/app/subutil/pkg/src/main/res/layout/activity_country.xml
similarity index 100%
rename from subutil/pkg/src/main/res/layout/activity_country.xml
rename to app/subutil/pkg/src/main/res/layout/activity_country.xml
diff --git a/subutil/pkg/src/main/res/layout/activity_dangerous.xml b/app/subutil/pkg/src/main/res/layout/activity_dangerous.xml
similarity index 100%
rename from subutil/pkg/src/main/res/layout/activity_dangerous.xml
rename to app/subutil/pkg/src/main/res/layout/activity_dangerous.xml
diff --git a/subutil/pkg/src/main/res/layout/activity_location.xml b/app/subutil/pkg/src/main/res/layout/activity_location.xml
similarity index 100%
rename from subutil/pkg/src/main/res/layout/activity_location.xml
rename to app/subutil/pkg/src/main/res/layout/activity_location.xml
diff --git a/subutil/pkg/src/main/res/layout/activity_pinyin.xml b/app/subutil/pkg/src/main/res/layout/activity_pinyin.xml
similarity index 100%
rename from subutil/pkg/src/main/res/layout/activity_pinyin.xml
rename to app/subutil/pkg/src/main/res/layout/activity_pinyin.xml
diff --git a/subutil/pkg/src/main/res/layout/activity_util_sub.xml b/app/subutil/pkg/src/main/res/layout/activity_util_sub.xml
similarity index 100%
rename from subutil/pkg/src/main/res/layout/activity_util_sub.xml
rename to app/subutil/pkg/src/main/res/layout/activity_util_sub.xml
diff --git a/subutil/pkg/src/main/res/values/strings.xml b/app/subutil/pkg/src/main/res/values/strings.xml
similarity index 100%
rename from subutil/pkg/src/main/res/values/strings.xml
rename to app/subutil/pkg/src/main/res/values/strings.xml
diff --git a/utilcode/pkg/.gitignore b/app/utilcode/app/.gitignore
similarity index 100%
rename from utilcode/pkg/.gitignore
rename to app/utilcode/app/.gitignore
diff --git a/app/utilcode/app/build.gradle b/app/utilcode/app/build.gradle
new file mode 100644
index 0000000000..244cde4f3a
--- /dev/null
+++ b/app/utilcode/app/build.gradle
@@ -0,0 +1,8 @@
+apply {
+ from "${rootDir.path}/buildApp.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation Config.depConfig.utilcode_pkg.dep
+}
\ No newline at end of file
diff --git a/app/utilcode/app/proguard-rules.pro b/app/utilcode/app/proguard-rules.pro
new file mode 100644
index 0000000000..f1b424510d
--- /dev/null
+++ b/app/utilcode/app/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/utilcode/app/src/main/AndroidManifest.xml b/app/utilcode/app/src/main/AndroidManifest.xml
similarity index 89%
rename from utilcode/app/src/main/AndroidManifest.xml
rename to app/utilcode/app/src/main/AndroidManifest.xml
index f61425c1d6..34308fcb79 100644
--- a/utilcode/app/src/main/AndroidManifest.xml
+++ b/app/utilcode/app/src/main/AndroidManifest.xml
@@ -12,8 +12,7 @@
+ android:launchMode="singleTop">
diff --git a/utilcode/app/src/main/java/com/blankj/utilcode/app/UtilCodeApp.kt b/app/utilcode/app/src/main/java/com/blankj/utilcode/app/UtilCodeApp.kt
similarity index 100%
rename from utilcode/app/src/main/java/com/blankj/utilcode/app/UtilCodeApp.kt
rename to app/utilcode/app/src/main/java/com/blankj/utilcode/app/UtilCodeApp.kt
diff --git a/app/utilcode/export/.gitignore b/app/utilcode/export/.gitignore
new file mode 100644
index 0000000000..796b96d1c4
--- /dev/null
+++ b/app/utilcode/export/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/app/utilcode/export/build.gradle b/app/utilcode/export/build.gradle
new file mode 100644
index 0000000000..691e76652d
--- /dev/null
+++ b/app/utilcode/export/build.gradle
@@ -0,0 +1,7 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ api Config.depConfig.lib_common.dep
+}
\ No newline at end of file
diff --git a/app/utilcode/export/proguard-rules.pro b/app/utilcode/export/proguard-rules.pro
new file mode 100644
index 0000000000..f1b424510d
--- /dev/null
+++ b/app/utilcode/export/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/utilcode/export/src/main/AndroidManifest.xml b/app/utilcode/export/src/main/AndroidManifest.xml
similarity index 100%
rename from utilcode/export/src/main/AndroidManifest.xml
rename to app/utilcode/export/src/main/AndroidManifest.xml
diff --git a/app/utilcode/export/src/main/java/com/blankj/utilcode/export/api/UtilCodeApi.java b/app/utilcode/export/src/main/java/com/blankj/utilcode/export/api/UtilCodeApi.java
new file mode 100644
index 0000000000..e764044b0c
--- /dev/null
+++ b/app/utilcode/export/src/main/java/com/blankj/utilcode/export/api/UtilCodeApi.java
@@ -0,0 +1,20 @@
+package com.blankj.utilcode.export.api;
+
+import android.content.Context;
+
+import com.blankj.utilcode.util.ApiUtils;
+
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/07/01
+ * desc :
+ *
+ */
+public abstract class UtilCodeApi extends ApiUtils.BaseApi {
+
+ public abstract void startUtilCodeActivity(Context context);
+
+}
\ No newline at end of file
diff --git a/app/utilcode/pkg/.gitignore b/app/utilcode/pkg/.gitignore
new file mode 100644
index 0000000000..796b96d1c4
--- /dev/null
+++ b/app/utilcode/pkg/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/app/utilcode/pkg/build.gradle b/app/utilcode/pkg/build.gradle
new file mode 100644
index 0000000000..69508fd31b
--- /dev/null
+++ b/app/utilcode/pkg/build.gradle
@@ -0,0 +1,7 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+}
\ No newline at end of file
diff --git a/app/utilcode/pkg/proguard-rules.pro b/app/utilcode/pkg/proguard-rules.pro
new file mode 100644
index 0000000000..f1b424510d
--- /dev/null
+++ b/app/utilcode/pkg/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/utilcode/pkg/src/main/AndroidManifest.xml b/app/utilcode/pkg/src/main/AndroidManifest.xml
similarity index 97%
rename from utilcode/pkg/src/main/AndroidManifest.xml
rename to app/utilcode/pkg/src/main/AndroidManifest.xml
index 2ea6afc9c4..cae917fec9 100644
--- a/utilcode/pkg/src/main/AndroidManifest.xml
+++ b/app/utilcode/pkg/src/main/AndroidManifest.xml
@@ -1,45 +1,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ android:launchMode="singleTop" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/utilcode/pkg/src/main/assets/fonts/dnmbhs.ttf b/app/utilcode/pkg/src/main/assets/fonts/dnmbhs.ttf
similarity index 100%
rename from utilcode/pkg/src/main/assets/fonts/dnmbhs.ttf
rename to app/utilcode/pkg/src/main/assets/fonts/dnmbhs.ttf
diff --git a/utilcode/pkg/src/main/assets/test/sub/test.txt b/app/utilcode/pkg/src/main/assets/test/sub/test.txt
similarity index 100%
rename from utilcode/pkg/src/main/assets/test/sub/test.txt
rename to app/utilcode/pkg/src/main/assets/test/sub/test.txt
diff --git a/utilcode/pkg/src/main/assets/test/test.txt b/app/utilcode/pkg/src/main/assets/test/test.txt
similarity index 100%
rename from utilcode/pkg/src/main/assets/test/test.txt
rename to app/utilcode/pkg/src/main/assets/test/test.txt
diff --git a/utilcode/pkg/src/main/assets/test_install b/app/utilcode/pkg/src/main/assets/test_install
similarity index 100%
rename from utilcode/pkg/src/main/assets/test_install
rename to app/utilcode/pkg/src/main/assets/test_install
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/Config.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/Config.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/Config.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/Config.kt
diff --git a/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/UtilCodeApiImpl.java b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/UtilCodeApiImpl.java
new file mode 100644
index 0000000000..7dfc7fe887
--- /dev/null
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/UtilCodeApiImpl.java
@@ -0,0 +1,25 @@
+package com.blankj.utilcode.pkg;
+
+import android.content.Context;
+
+import com.blankj.utilcode.export.api.UtilCodeApi;
+import com.blankj.utilcode.pkg.feature.CoreUtilActivity;
+import com.blankj.utilcode.util.ApiUtils;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/07/01
+ * desc :
+ *
+ */
+@ApiUtils.Api
+public class UtilCodeApiImpl extends UtilCodeApi {
+
+ @Override
+ public void startUtilCodeActivity(Context context) {
+ CoreUtilActivity.Companion.start(context);
+ }
+
+}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt
similarity index 96%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt
index 7ec4fbd400..36d4f7f437 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/CoreUtilActivity.kt
@@ -8,9 +8,11 @@ import com.blankj.lib.common.CommonTitleActivity
import com.blankj.utilcode.pkg.R
import com.blankj.utilcode.pkg.feature.activity.ActivityActivity
import com.blankj.utilcode.pkg.feature.adaptScreen.AdaptScreenActivity
+import com.blankj.utilcode.pkg.feature.api.ApiActivity
import com.blankj.utilcode.pkg.feature.app.AppActivity
import com.blankj.utilcode.pkg.feature.bar.BarActivity
import com.blankj.utilcode.pkg.feature.brightness.BrightnessActivity
+import com.blankj.utilcode.pkg.feature.bus.BusActivity
import com.blankj.utilcode.pkg.feature.clean.CleanActivity
import com.blankj.utilcode.pkg.feature.click.ClickActivity
import com.blankj.utilcode.pkg.feature.device.DeviceActivity
@@ -50,7 +52,6 @@ import kotlinx.android.synthetic.main.activity_util_core.*
class CoreUtilActivity : CommonTitleActivity() {
companion object {
- @BusUtils.Subscribe(name = "CoreUtilActivity#start")
fun start(context: Context) {
val starter = Intent(context, CoreUtilActivity::class.java)
context.startActivity(starter)
@@ -71,6 +72,7 @@ class CoreUtilActivity : CommonTitleActivity() {
applyDebouncingClickListener(
coreUtilActivityBtn,
coreUtilAdaptScreenBtn,
+ coreUtilApiBtn,
coreUtilAppBtn,
coreUtilBarBtn,
coreUtilBrightnessBtn,
@@ -110,10 +112,11 @@ class CoreUtilActivity : CommonTitleActivity() {
when (view.id) {
R.id.coreUtilActivityBtn -> ActivityActivity.start(this)
R.id.coreUtilAdaptScreenBtn -> AdaptScreenActivity.start(this)
+ R.id.coreUtilApiBtn -> ApiActivity.start(this)
R.id.coreUtilAppBtn -> AppActivity.start(this)
R.id.coreUtilBarBtn -> BarActivity.start(this)
R.id.coreUtilBrightnessBtn -> BrightnessActivity.start(this)
- R.id.coreUtilBusBtn -> BusUtils.postStatic("BusActivity#start", this)
+ R.id.coreUtilBusBtn -> BusActivity.start(this)
R.id.coreUtilCleanBtn -> CleanActivity.start(this)
R.id.coreUtilClickBtn -> ClickActivity.start(this)
R.id.coreUtilCrashBtn -> throw NullPointerException("crash test")
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/ActivityActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/activity/SubActivityActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt
diff --git a/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/ApiActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/ApiActivity.kt
new file mode 100644
index 0000000000..d6d6482295
--- /dev/null
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/ApiActivity.kt
@@ -0,0 +1,65 @@
+package com.blankj.utilcode.pkg.feature.api
+
+import android.content.Context
+import android.content.Intent
+import android.os.Bundle
+import android.view.View
+import com.blankj.lib.common.CommonTitleActivity
+import com.blankj.utilcode.pkg.R
+import com.blankj.utilcode.pkg.feature.api.other.export.OtherModuleApi
+import com.blankj.utilcode.util.ApiUtils
+import com.blankj.utilcode.util.ToastUtils
+import kotlinx.android.synthetic.main.activity_api.*
+
+/**
+ * ```
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2019/03/12
+ * desc : demo about BusUtils
+ * ```
+ */
+class ApiActivity : CommonTitleActivity() {
+
+ companion object {
+ fun start(context: Context) {
+ val starter = Intent(context, ApiActivity::class.java)
+ context.startActivity(starter)
+ }
+ }
+
+ override fun bindTitle(): CharSequence {
+ return getString(R.string.demo_api)
+ }
+
+ override fun initData(bundle: Bundle?) {}
+
+ override fun bindLayout(): Int {
+ return R.layout.activity_api
+ }
+
+ override fun initView(savedInstanceState: Bundle?, contentView: View?) {
+ applyDebouncingClickListener(
+ apiInvokeWithParams,
+ apiInvokeWithReturnValue
+ )
+ }
+
+ override fun doBusiness() {}
+
+ override fun onDebouncingClick(view: View) {
+ val api = ApiUtils.getApi(OtherModuleApi::class.java)
+ when (view.id) {
+ R.id.apiInvokeWithParams -> {
+ api.invokeWithParams(OtherModuleApi.ApiBean("params"))
+ }
+ R.id.apiInvokeWithReturnValue -> {
+ ToastUtils.showShort(api.invokeWithReturnValue().name)
+ }
+ }
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ }
+}
diff --git a/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/export/OtherModuleApi.java b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/export/OtherModuleApi.java
new file mode 100644
index 0000000000..c88e781414
--- /dev/null
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/export/OtherModuleApi.java
@@ -0,0 +1,27 @@
+package com.blankj.utilcode.pkg.feature.api.other.export;
+
+import com.blankj.utilcode.util.ApiUtils;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/07/10
+ * desc :
+ *
+ */
+public abstract class OtherModuleApi extends ApiUtils.BaseApi {
+
+ public abstract void invokeWithParams(ApiBean bean);
+
+ public abstract ApiBean invokeWithReturnValue();
+
+ public static class ApiBean {
+
+ public String name;
+
+ public ApiBean(String name) {
+ this.name = name;
+ }
+ }
+}
diff --git a/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/pkg/OtherPkgApiImpl.java b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/pkg/OtherPkgApiImpl.java
new file mode 100644
index 0000000000..e63184e5f7
--- /dev/null
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api/other/pkg/OtherPkgApiImpl.java
@@ -0,0 +1,28 @@
+package com.blankj.utilcode.pkg.feature.api.other.pkg;
+
+import com.blankj.utilcode.pkg.feature.api.other.export.OtherModuleApi;
+import com.blankj.utilcode.util.ApiUtils;
+import com.blankj.utilcode.util.ToastUtils;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/07/10
+ * desc :
+ *
+ */
+@ApiUtils.Api
+public class OtherPkgApiImpl extends OtherModuleApi {
+
+ @Override
+ public void invokeWithParams(ApiBean bean) {
+ ToastUtils.showShort(bean.name);
+ }
+
+ @Override
+ public ApiBean invokeWithReturnValue() {
+ String value = "value";
+ return new ApiBean(value);
+ }
+}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusFragmentActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
similarity index 97%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
index fabe9bd795..f8a6c9a686 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
@@ -23,7 +23,6 @@ class BusActivity : CommonTitleActivity() {
companion object {
const val BUS_KEY = "BusActivity"
- @BusUtils.Subscribe(name = "BusActivity#start")
fun start(context: Context) {
val starter = Intent(context, BusActivity::class.java)
context.startActivity(starter)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ContainerFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/FragmentActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image/ImageActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
similarity index 88%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
index 7e2a17761a..894ab9ac0f 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
+++ b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
@@ -52,6 +52,9 @@ class KeyboardActivity : CommonTitleActivity() {
.appendLine("isSoftInputVisible: " + KeyboardUtils.isSoftInputVisible(this@KeyboardActivity))
.append("height: $height")
.create()
+ if (height > 0) {
+ keyboardEt.requestFocus()
+ }
}
}
@@ -59,9 +62,15 @@ class KeyboardActivity : CommonTitleActivity() {
override fun onDebouncingClick(view: View) {
when (view.id) {
- R.id.keyboardHideSoftInputBtn -> KeyboardUtils.hideSoftInput(this)
- R.id.keyboardShowSoftInputBtn -> KeyboardUtils.showSoftInput(keyboardEt)
- R.id.keyboardToggleSoftInputBtn -> KeyboardUtils.toggleSoftInput()
+ R.id.keyboardHideSoftInputBtn -> {
+ KeyboardUtils.hideSoftInput(this)
+ }
+ R.id.keyboardShowSoftInputBtn -> {
+ KeyboardUtils.showSoftInput(this)
+ }
+ R.id.keyboardToggleSoftInputBtn -> {
+ KeyboardUtils.toggleSoftInput()
+ }
R.id.keyboardShowDialogBtn -> {
keyboardEt.clearFocus()
DialogHelper.showKeyboardDialog()
@@ -69,11 +78,6 @@ class KeyboardActivity : CommonTitleActivity() {
}
}
- override fun onPause() {
- super.onPause()
- KeyboardUtils.hideSoftInput(this)
- }
-
// override fun dispatchTouchEvent(ev: MotionEvent): Boolean {
// if (ev.action == MotionEvent.ACTION_DOWN) {
// val v = currentFocus
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/language/LanguageActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/language/LanguageActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/language/LanguageActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/language/LanguageActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/snackbar/SnackbarActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/span/SpanActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/CustomToast.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/toast/ToastActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/DialogHelper.kt
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/PermissionHelper.kt b/app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/PermissionHelper.kt
similarity index 100%
rename from utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/PermissionHelper.kt
rename to app/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/helper/PermissionHelper.kt
diff --git a/utilcode/pkg/src/main/res/anim/fade_in_1000.xml b/app/utilcode/pkg/src/main/res/anim/fade_in_1000.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/anim/fade_in_1000.xml
rename to app/utilcode/pkg/src/main/res/anim/fade_in_1000.xml
diff --git a/utilcode/pkg/src/main/res/anim/fade_out_1000.xml b/app/utilcode/pkg/src/main/res/anim/fade_out_1000.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/anim/fade_out_1000.xml
rename to app/utilcode/pkg/src/main/res/anim/fade_out_1000.xml
diff --git a/utilcode/pkg/src/main/res/anim/slide_in_bottom_200.xml b/app/utilcode/pkg/src/main/res/anim/slide_in_bottom_200.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/anim/slide_in_bottom_200.xml
rename to app/utilcode/pkg/src/main/res/anim/slide_in_bottom_200.xml
diff --git a/utilcode/pkg/src/main/res/anim/slide_in_right_1000.xml b/app/utilcode/pkg/src/main/res/anim/slide_in_right_1000.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/anim/slide_in_right_1000.xml
rename to app/utilcode/pkg/src/main/res/anim/slide_in_right_1000.xml
diff --git a/utilcode/pkg/src/main/res/anim/slide_out_bottom_200.xml b/app/utilcode/pkg/src/main/res/anim/slide_out_bottom_200.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/anim/slide_out_bottom_200.xml
rename to app/utilcode/pkg/src/main/res/anim/slide_out_bottom_200.xml
diff --git a/utilcode/pkg/src/main/res/anim/slide_out_left_1000.xml b/app/utilcode/pkg/src/main/res/anim/slide_out_left_1000.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/anim/slide_out_left_1000.xml
rename to app/utilcode/pkg/src/main/res/anim/slide_out_left_1000.xml
diff --git a/utilcode/pkg/src/main/res/animator/fragment_slide_left_enter.xml b/app/utilcode/pkg/src/main/res/animator/fragment_slide_left_enter.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/animator/fragment_slide_left_enter.xml
rename to app/utilcode/pkg/src/main/res/animator/fragment_slide_left_enter.xml
diff --git a/utilcode/pkg/src/main/res/animator/fragment_slide_left_exit.xml b/app/utilcode/pkg/src/main/res/animator/fragment_slide_left_exit.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/animator/fragment_slide_left_exit.xml
rename to app/utilcode/pkg/src/main/res/animator/fragment_slide_left_exit.xml
diff --git a/utilcode/pkg/src/main/res/animator/fragment_slide_right_enter.xml b/app/utilcode/pkg/src/main/res/animator/fragment_slide_right_enter.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/animator/fragment_slide_right_enter.xml
rename to app/utilcode/pkg/src/main/res/animator/fragment_slide_right_enter.xml
diff --git a/utilcode/pkg/src/main/res/animator/fragment_slide_right_exit.xml b/app/utilcode/pkg/src/main/res/animator/fragment_slide_right_exit.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/animator/fragment_slide_right_exit.xml
rename to app/utilcode/pkg/src/main/res/animator/fragment_slide_right_exit.xml
diff --git a/utilcode/pkg/src/main/res/drawable/activity_activity_icon.png b/app/utilcode/pkg/src/main/res/drawable/activity_activity_icon.png
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/activity_activity_icon.png
rename to app/utilcode/pkg/src/main/res/drawable/activity_activity_icon.png
diff --git a/utilcode/pkg/src/main/res/drawable/activity_activity_logo.png b/app/utilcode/pkg/src/main/res/drawable/activity_activity_logo.png
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/activity_activity_logo.png
rename to app/utilcode/pkg/src/main/res/drawable/activity_activity_logo.png
diff --git a/utilcode/pkg/src/main/res/drawable/bar_status_custom.xml b/app/utilcode/pkg/src/main/res/drawable/bar_status_custom.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/bar_status_custom.xml
rename to app/utilcode/pkg/src/main/res/drawable/bar_status_custom.xml
diff --git a/utilcode/pkg/src/main/res/drawable/bar_status_nav_alpha.xml b/app/utilcode/pkg/src/main/res/drawable/bar_status_nav_alpha.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/bar_status_nav_alpha.xml
rename to app/utilcode/pkg/src/main/res/drawable/bar_status_nav_alpha.xml
diff --git a/utilcode/pkg/src/main/res/drawable/bar_status_nav_color.xml b/app/utilcode/pkg/src/main/res/drawable/bar_status_nav_color.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/bar_status_nav_color.xml
rename to app/utilcode/pkg/src/main/res/drawable/bar_status_nav_color.xml
diff --git a/utilcode/pkg/src/main/res/drawable/bar_status_nav_custom.xml b/app/utilcode/pkg/src/main/res/drawable/bar_status_nav_custom.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/bar_status_nav_custom.xml
rename to app/utilcode/pkg/src/main/res/drawable/bar_status_nav_custom.xml
diff --git a/utilcode/pkg/src/main/res/drawable/bar_status_nav_image.xml b/app/utilcode/pkg/src/main/res/drawable/bar_status_nav_image.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/bar_status_nav_image.xml
rename to app/utilcode/pkg/src/main/res/drawable/bar_status_nav_image.xml
diff --git a/utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml b/app/utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml
rename to app/utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml
diff --git a/utilcode/pkg/src/main/res/drawable/fragment_nav.xml b/app/utilcode/pkg/src/main/res/drawable/fragment_nav.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/fragment_nav.xml
rename to app/utilcode/pkg/src/main/res/drawable/fragment_nav.xml
diff --git a/utilcode/pkg/src/main/res/drawable/image_lena.jpg b/app/utilcode/pkg/src/main/res/drawable/image_lena.jpg
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/image_lena.jpg
rename to app/utilcode/pkg/src/main/res/drawable/image_lena.jpg
diff --git a/utilcode/pkg/src/main/res/drawable/snackbar_custom_bg.xml b/app/utilcode/pkg/src/main/res/drawable/snackbar_custom_bg.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/snackbar_custom_bg.xml
rename to app/utilcode/pkg/src/main/res/drawable/snackbar_custom_bg.xml
diff --git a/utilcode/pkg/src/main/res/drawable/span_cheetah.png b/app/utilcode/pkg/src/main/res/drawable/span_cheetah.png
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/span_cheetah.png
rename to app/utilcode/pkg/src/main/res/drawable/span_cheetah.png
diff --git a/utilcode/pkg/src/main/res/drawable/span_shape_block_high.xml b/app/utilcode/pkg/src/main/res/drawable/span_shape_block_high.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/span_shape_block_high.xml
rename to app/utilcode/pkg/src/main/res/drawable/span_shape_block_high.xml
diff --git a/utilcode/pkg/src/main/res/drawable/span_shape_block_low.xml b/app/utilcode/pkg/src/main/res/drawable/span_shape_block_low.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/span_shape_block_low.xml
rename to app/utilcode/pkg/src/main/res/drawable/span_shape_block_low.xml
diff --git a/utilcode/pkg/src/main/res/drawable/toast_shape_round_rect.xml b/app/utilcode/pkg/src/main/res/drawable/toast_shape_round_rect.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/drawable/toast_shape_round_rect.xml
rename to app/utilcode/pkg/src/main/res/drawable/toast_shape_round_rect.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_activity.xml b/app/utilcode/pkg/src/main/res/layout/activity_activity.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_activity.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_activity.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_activity_sub.xml b/app/utilcode/pkg/src/main/res/layout/activity_activity_sub.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_activity_sub.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_activity_sub.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml b/app/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_adaptscreen.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml b/app/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_adaptscreen_close.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml b/app/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_adaptscreen_height.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml b/app/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_adaptscreen_width.xml
diff --git a/app/utilcode/pkg/src/main/res/layout/activity_api.xml b/app/utilcode/pkg/src/main/res/layout/activity_api.xml
new file mode 100644
index 0000000000..1d8324110c
--- /dev/null
+++ b/app/utilcode/pkg/src/main/res/layout/activity_api.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_app.xml b/app/utilcode/pkg/src/main/res/layout/activity_app.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_app.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_app.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_nav.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_nav.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_nav.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_nav.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_notification.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_notification.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_notification.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_notification.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_alpha.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status_alpha.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status_alpha.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status_alpha.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_color.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status_color.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status_color.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status_color.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_drawer.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status_drawer.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status_drawer.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status_drawer.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status_fragment.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_image_view.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status_image_view.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status_image_view.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status_image_view.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bar_status_swipe_back.xml b/app/utilcode/pkg/src/main/res/layout/activity_bar_status_swipe_back.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bar_status_swipe_back.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bar_status_swipe_back.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_brightness.xml b/app/utilcode/pkg/src/main/res/layout/activity_brightness.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_brightness.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_brightness.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bus.xml b/app/utilcode/pkg/src/main/res/layout/activity_bus.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bus.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bus.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_bus_remote.xml b/app/utilcode/pkg/src/main/res/layout/activity_bus_remote.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_bus_remote.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_bus_remote.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_clean.xml b/app/utilcode/pkg/src/main/res/layout/activity_clean.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_clean.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_clean.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_click.xml b/app/utilcode/pkg/src/main/res/layout/activity_click.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_click.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_click.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_device.xml b/app/utilcode/pkg/src/main/res/layout/activity_device.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_device.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_device.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_flashlight.xml b/app/utilcode/pkg/src/main/res/layout/activity_flashlight.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_flashlight.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_flashlight.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_fragment.xml b/app/utilcode/pkg/src/main/res/layout/activity_fragment.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_fragment.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_fragment.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_image.xml b/app/utilcode/pkg/src/main/res/layout/activity_image.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_image.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_image.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_keyboard.xml b/app/utilcode/pkg/src/main/res/layout/activity_keyboard.xml
similarity index 98%
rename from utilcode/pkg/src/main/res/layout/activity_keyboard.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_keyboard.xml
index 5ceccc8bee..806d8d803b 100644
--- a/utilcode/pkg/src/main/res/layout/activity_keyboard.xml
+++ b/app/utilcode/pkg/src/main/res/layout/activity_keyboard.xml
@@ -48,6 +48,6 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
- android:inputType="text" />
+ android:inputType="phone" />
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_language.xml b/app/utilcode/pkg/src/main/res/layout/activity_language.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_language.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_language.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_log.xml b/app/utilcode/pkg/src/main/res/layout/activity_log.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_log.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_log.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_metadata.xml b/app/utilcode/pkg/src/main/res/layout/activity_metadata.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_metadata.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_metadata.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_network.xml b/app/utilcode/pkg/src/main/res/layout/activity_network.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_network.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_network.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_path.xml b/app/utilcode/pkg/src/main/res/layout/activity_path.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_path.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_path.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_permission.xml b/app/utilcode/pkg/src/main/res/layout/activity_permission.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_permission.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_permission.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_phone.xml b/app/utilcode/pkg/src/main/res/layout/activity_phone.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_phone.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_phone.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_process.xml b/app/utilcode/pkg/src/main/res/layout/activity_process.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_process.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_process.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_reflect.xml b/app/utilcode/pkg/src/main/res/layout/activity_reflect.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_reflect.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_reflect.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_resource.xml b/app/utilcode/pkg/src/main/res/layout/activity_resource.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_resource.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_resource.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_rom.xml b/app/utilcode/pkg/src/main/res/layout/activity_rom.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_rom.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_rom.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_screen.xml b/app/utilcode/pkg/src/main/res/layout/activity_screen.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_screen.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_screen.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_sdcard.xml b/app/utilcode/pkg/src/main/res/layout/activity_sdcard.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_sdcard.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_sdcard.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_snackbar.xml b/app/utilcode/pkg/src/main/res/layout/activity_snackbar.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_snackbar.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_snackbar.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_span.xml b/app/utilcode/pkg/src/main/res/layout/activity_span.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_span.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_span.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_spstatic.xml b/app/utilcode/pkg/src/main/res/layout/activity_spstatic.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_spstatic.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_spstatic.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_toast.xml b/app/utilcode/pkg/src/main/res/layout/activity_toast.xml
similarity index 100%
rename from utilcode/pkg/src/main/res/layout/activity_toast.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_toast.xml
diff --git a/utilcode/pkg/src/main/res/layout/activity_util_core.xml b/app/utilcode/pkg/src/main/res/layout/activity_util_core.xml
similarity index 97%
rename from utilcode/pkg/src/main/res/layout/activity_util_core.xml
rename to app/utilcode/pkg/src/main/res/layout/activity_util_core.xml
index 1524fbf6cf..5d640fd794 100644
--- a/utilcode/pkg/src/main/res/layout/activity_util_core.xml
+++ b/app/utilcode/pkg/src/main/res/layout/activity_util_core.xml
@@ -23,6 +23,13 @@
android:layout_height="wrap_content"
android:text="@string/demo_adapt_screen" />
+
+
*/
public class CommonApplication extends BaseApplication {
diff --git a/lib/common/src/main/java/com/blankj/lib/common/CommonBackActivity.java b/lib/common/src/main/java/com/blankj/lib/common/CommonBackActivity.java
index 76cfc09f36..349e6081db 100644
--- a/lib/common/src/main/java/com/blankj/lib/common/CommonBackActivity.java
+++ b/lib/common/src/main/java/com/blankj/lib/common/CommonBackActivity.java
@@ -2,7 +2,6 @@
import android.os.Bundle;
-import com.blankj.common.R;
import com.blankj.lib.base.BaseActivity;
import com.blankj.swipepanel.SwipePanel;
import com.blankj.utilcode.util.SizeUtils;
diff --git a/lib/common/src/main/java/com/blankj/lib/common/CommonDrawerActivity.java b/lib/common/src/main/java/com/blankj/lib/common/CommonDrawerActivity.java
index efb9f52854..f09fef8683 100755
--- a/lib/common/src/main/java/com/blankj/lib/common/CommonDrawerActivity.java
+++ b/lib/common/src/main/java/com/blankj/lib/common/CommonDrawerActivity.java
@@ -12,7 +12,6 @@
import android.view.MenuItem;
import android.widget.FrameLayout;
-import com.blankj.common.R;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.StringUtils;
diff --git a/lib/common/src/main/java/com/blankj/lib/common/CommonTitleActivity.java b/lib/common/src/main/java/com/blankj/lib/common/CommonTitleActivity.java
index 66d7f97970..56264d7e99 100644
--- a/lib/common/src/main/java/com/blankj/lib/common/CommonTitleActivity.java
+++ b/lib/common/src/main/java/com/blankj/lib/common/CommonTitleActivity.java
@@ -11,7 +11,6 @@
import android.view.ViewStub;
import android.widget.FrameLayout;
-import com.blankj.common.R;
import com.blankj.utilcode.util.BarUtils;
import com.blankj.utilcode.util.ColorUtils;
diff --git a/lib/common/src/main/res/values/strings.xml b/lib/common/src/main/res/values/strings.xml
index bd03140d88..a3ce462324 100644
--- a/lib/common/src/main/res/values/strings.xml
+++ b/lib/common/src/main/res/values/strings.xml
@@ -14,6 +14,4 @@
You have rejected us to apply for authorization, please agree to authorization, otherwise the function can\'t be used normally!
We need some of the permissions you rejected or the system failed to apply failed, please manually set to the page authorize, otherwise the function can\'t be used normally!
-
- The application crashes, does it need to be restarted?
diff --git a/lib/subutil/.gitignore b/lib/subutil/.gitignore
new file mode 100644
index 0000000000..796b96d1c4
--- /dev/null
+++ b/lib/subutil/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/subutil/README-CN.md b/lib/subutil/README-CN.md
similarity index 100%
rename from subutil/README-CN.md
rename to lib/subutil/README-CN.md
diff --git a/subutil/README.md b/lib/subutil/README.md
similarity index 100%
rename from subutil/README.md
rename to lib/subutil/README.md
diff --git a/lib/subutil/build.gradle b/lib/subutil/build.gradle
new file mode 100644
index 0000000000..49d56e5ee6
--- /dev/null
+++ b/lib/subutil/build.gradle
@@ -0,0 +1,28 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+
+ plugin "tech.harmonysoft.oss.traute"
+ plugin "com.github.dcendents.android-maven"
+ plugin "com.jfrog.bintray"
+ plugin "readme-sub"
+}
+
+readme {
+ readmeFile file('./README.md')
+ readmeCnFile file('./README-CN.md')
+}
+
+dependencies {
+ compileOnly Config.depConfig.support_appcompat_v7.dep
+ compileOnly Config.depConfig.support_design.dep
+ compileOnly Config.depConfig.lib_utilcode.dep
+ api(Config.depConfig.glide.dep) {
+ exclude group: "com.android.support"
+ }
+ api Config.depConfig.retrofit.dep
+ api Config.depConfig.gson.dep
+
+ testImplementation Config.depConfig.junit.dep
+ testImplementation Config.depConfig.robolectric.dep
+ testImplementation Config.depConfig.lib_utilcode.dep
+}
\ No newline at end of file
diff --git a/subutil/lib/proguard-rules.pro b/lib/subutil/proguard-rules.pro
similarity index 100%
rename from subutil/lib/proguard-rules.pro
rename to lib/subutil/proguard-rules.pro
diff --git a/subutil/lib/src/main/AndroidManifest.xml b/lib/subutil/src/main/AndroidManifest.xml
similarity index 100%
rename from subutil/lib/src/main/AndroidManifest.xml
rename to lib/subutil/src/main/AndroidManifest.xml
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/AppStoreUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/AppStoreUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/AppStoreUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/AppStoreUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/BitUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/BitUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/BitUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/BitUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/CameraUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/CameraUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/CameraUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/CameraUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/ClipboardUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/ClipboardUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/ClipboardUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/ClipboardUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/CoordinateUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/CoordinateUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/CoordinateUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/CoordinateUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/CountryUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/CountryUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/DangerousUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/DangerousUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/DangerousUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/DangerousUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/GlideUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/GlideUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/GlideUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/GlideUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/HttpsUtil.java b/lib/subutil/src/main/java/com/blankj/subutil/util/HttpsUtil.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/HttpsUtil.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/HttpsUtil.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/LocationUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/LocationUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/LocationUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/LocationUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/LunarUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/LunarUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/LunarUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/LunarUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/PinyinUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/PinyinUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/PinyinUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/PinyinUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/RetrofitUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/RetrofitUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/RetrofitUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/RetrofitUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Chain.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/Chain.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/Chain.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/Chain.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/ExecutorFactory.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Headers.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/Headers.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/Headers.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/Headers.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/HttpUtils.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/HttpUtils.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/HttpUtils.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/HttpUtils.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Interceptor.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/Interceptor.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/Interceptor.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/Interceptor.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Request.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/Request.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/Request.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/Request.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/Response.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/Response.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/Response.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/Response.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/ResponseCallback.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/ResponseCallback.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/ResponseCallback.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/ResponseCallback.java
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/http/SSLConfig.java b/lib/subutil/src/main/java/com/blankj/subutil/util/http/SSLConfig.java
similarity index 100%
rename from subutil/lib/src/main/java/com/blankj/subutil/util/http/SSLConfig.java
rename to lib/subutil/src/main/java/com/blankj/subutil/util/http/SSLConfig.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/BaseTest.java b/lib/subutil/src/test/java/com/blankj/subutil/util/BaseTest.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/BaseTest.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/BaseTest.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/ClipboardUtilsTest.java b/lib/subutil/src/test/java/com/blankj/subutil/util/ClipboardUtilsTest.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/ClipboardUtilsTest.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/ClipboardUtilsTest.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/CoordinateUtilsTest.java b/lib/subutil/src/test/java/com/blankj/subutil/util/CoordinateUtilsTest.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/CoordinateUtilsTest.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/CoordinateUtilsTest.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/LunarUtilsTest.java b/lib/subutil/src/test/java/com/blankj/subutil/util/LunarUtilsTest.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/LunarUtilsTest.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/LunarUtilsTest.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/TestConfig.java b/lib/subutil/src/test/java/com/blankj/subutil/util/TestConfig.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/TestConfig.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/TestConfig.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/TestUtils.java b/lib/subutil/src/test/java/com/blankj/subutil/util/TestUtils.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/TestUtils.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/TestUtils.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/HttpUtilsTest.java b/lib/subutil/src/test/java/com/blankj/subutil/util/http/HttpUtilsTest.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/http/HttpUtilsTest.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/http/HttpUtilsTest.java
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/UserBean.java b/lib/subutil/src/test/java/com/blankj/subutil/util/http/UserBean.java
similarity index 100%
rename from subutil/lib/src/test/java/com/blankj/subutil/util/http/UserBean.java
rename to lib/subutil/src/test/java/com/blankj/subutil/util/http/UserBean.java
diff --git a/lib/utilcode/.gitignore b/lib/utilcode/.gitignore
new file mode 100644
index 0000000000..42afabfd2a
--- /dev/null
+++ b/lib/utilcode/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/utilcode/README-CN.md b/lib/utilcode/README-CN.md
similarity index 100%
rename from utilcode/README-CN.md
rename to lib/utilcode/README-CN.md
diff --git a/utilcode/README-STATIC-BUS.md b/lib/utilcode/README-STATIC-BUS.md
similarity index 98%
rename from utilcode/README-STATIC-BUS.md
rename to lib/utilcode/README-STATIC-BUS.md
index cee8b68c3e..805b7e7354 100644
--- a/utilcode/README-STATIC-BUS.md
+++ b/lib/utilcode/README-STATIC-BUS.md
@@ -27,7 +27,7 @@ apply plugin: "com.blankj.bus"
给 base 模块添加 [AndroidUtilCode](https://github.com/Blankj/AndroidUtilCode) 依赖:
```groovy
-api "com.blankj:utilcode:1.24.7"
+result "com.blankj:utilcode:1.24.7"
```
比如 module0 中存在的 `Module0Activity.java`,我们通常都是在它内部写一个 `start` 函数来启动它,现在我们给它添加 `@BusUtils.Subscribe` 注解,并给注解的 `name` 赋唯一值,要注意,函数务必要 `public static` 哦:
diff --git a/utilcode/README.md b/lib/utilcode/README.md
similarity index 100%
rename from utilcode/README.md
rename to lib/utilcode/README.md
diff --git a/lib/utilcode/build.gradle b/lib/utilcode/build.gradle
new file mode 100644
index 0000000000..c28114b5aa
--- /dev/null
+++ b/lib/utilcode/build.gradle
@@ -0,0 +1,27 @@
+apply {
+ from "${rootDir.path}/buildLib.gradle"
+
+ plugin "tech.harmonysoft.oss.traute"
+ plugin "com.github.dcendents.android-maven"
+ plugin "com.jfrog.bintray"
+ plugin "readme-core"
+}
+
+readme {
+ readmeFile file('./README.md')
+ readmeCnFile file('./README-CN.md')
+}
+
+apply from: "${rootDir.path}/gradle/upload/bintrayUploadAndroid.gradle"
+
+dependencies {
+ compile Config.depConfig.gson.dep
+
+ compileOnly Config.depConfig.support_appcompat_v7.dep
+ compileOnly Config.depConfig.support_design.dep
+
+ testImplementation Config.depConfig.junit.dep
+ testImplementation Config.depConfig.robolectric.dep
+ testImplementation Config.depConfig.support_appcompat_v7.dep
+ testImplementation Config.depConfig.lib_base.dep
+}
\ No newline at end of file
diff --git a/utilcode/lib/proguard-rules.pro b/lib/utilcode/proguard-rules.pro
similarity index 100%
rename from utilcode/lib/proguard-rules.pro
rename to lib/utilcode/proguard-rules.pro
diff --git a/utilcode/lib/project.properties b/lib/utilcode/project.properties
similarity index 100%
rename from utilcode/lib/project.properties
rename to lib/utilcode/project.properties
diff --git a/utilcode/lib/src/main/AndroidManifest.xml b/lib/utilcode/src/main/AndroidManifest.xml
similarity index 100%
rename from utilcode/lib/src/main/AndroidManifest.xml
rename to lib/utilcode/src/main/AndroidManifest.xml
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/CacheConstants.java b/lib/utilcode/src/main/java/com/blankj/utilcode/constant/CacheConstants.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/constant/CacheConstants.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/constant/CacheConstants.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java b/lib/utilcode/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/constant/MemoryConstants.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java b/lib/utilcode/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/constant/PermissionConstants.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/RegexConstants.java b/lib/utilcode/src/main/java/com/blankj/utilcode/constant/RegexConstants.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/constant/RegexConstants.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/constant/RegexConstants.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java b/lib/utilcode/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/constant/TimeConstants.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
similarity index 99%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
index fed25d6831..8f6dd9db33 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
+++ b/lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java
@@ -50,7 +50,7 @@ public static Activity getActivityByView(@NonNull View view) {
* @param context The context.
* @return the activity by context.
*/
- public static Activity getActivityByContext(@NonNull Context context) {
+ public static Activity getActivityByContext(Context context) {
if (context instanceof Activity) return (Activity) context;
while (context instanceof ContextWrapper) {
if (context instanceof Activity) {
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
diff --git a/lib/utilcode/src/main/java/com/blankj/utilcode/util/ApiUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/ApiUtils.java
new file mode 100644
index 0000000000..1d9bbd0559
--- /dev/null
+++ b/lib/utilcode/src/main/java/com/blankj/utilcode/util/ApiUtils.java
@@ -0,0 +1,101 @@
+package com.blankj.utilcode.util;
+
+import android.support.annotation.NonNull;
+import android.util.Log;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2019/07/09
+ * desc : utils about api
+ *
+ */
+public final class ApiUtils {
+
+ private static final String TAG = "ApiUtils";
+
+ private Map mApiMap = new HashMap<>();
+ private Map mInjectApiImplMap = new HashMap<>();
+
+ private ApiUtils() {
+ init();
+ }
+
+ /**
+ * It'll be injected the implClasses who have {@link ApiUtils.Api} annotation
+ * by function of {@link ApiUtils#registerImpl} when execute transform task.
+ */
+ private void init() {/*inject*/}
+
+ private void registerImpl(Class implClass) {
+ mInjectApiImplMap.put(implClass.getSuperclass(), implClass);
+ }
+
+ /**
+ * Get api.
+ *
+ * @param apiClass The class of api.
+ * @param The type.
+ * @return the api
+ */
+ public static T getApi(@NonNull Class apiClass) {
+ return getInstance().getApiInner(apiClass);
+ }
+
+ public static String toString_() {
+ return getInstance().toString();
+ }
+
+ @Override
+ public String toString() {
+ return "apis: " + mApiMap +
+ "\ninjectApis: " + mInjectApiImplMap;
+ }
+
+ private static ApiUtils getInstance() {
+ return LazyHolder.INSTANCE;
+ }
+
+ private Result getApiInner(final @NonNull Class apiClass) {
+ BaseApi api = mApiMap.get(apiClass);
+ if (api == null) {
+ Class implClass = mInjectApiImplMap.get(apiClass);
+ if (implClass != null) {
+ try {
+ api = (BaseApi) implClass.newInstance();
+ mApiMap.put(apiClass, api);
+ } catch (Exception ignore) {/**/}
+ }
+ if (api == null) {
+ Log.e(TAG, apiClass + " is not impl.");
+ return null;
+ }
+ }
+ //noinspection unchecked
+ return (Result) api.invoke();
+ }
+
+ private static class LazyHolder {
+ private static final ApiUtils INSTANCE = new ApiUtils();
+ }
+
+ @Target({ElementType.TYPE})
+ @Retention(RetentionPolicy.CLASS)
+ public @interface Api {
+ boolean isDebug() default false;
+ }
+
+ public abstract static class BaseApi {
+ private BaseApi invoke() {
+ return this;
+ }
+ }
+}
\ No newline at end of file
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/AppUtils.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/util/AppUtils.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/BarUtils.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/util/BarUtils.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/util/BarUtils.java
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
similarity index 100%
rename from utilcode/lib/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
rename to lib/utilcode/src/main/java/com/blankj/utilcode/util/BrightnessUtils.java
diff --git a/lib/utilcode/src/main/java/com/blankj/utilcode/util/BusUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/BusUtils.java
new file mode 100644
index 0000000000..9d7f390039
--- /dev/null
+++ b/lib/utilcode/src/main/java/com/blankj/utilcode/util/BusUtils.java
@@ -0,0 +1,123 @@
+package com.blankj.utilcode.util;
+
+import android.util.Log;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2018/10/02
+ * desc : utils about bus
+ *
+ */
+public final class BusUtils {
+
+ private static final String TAG = "BusUtils";
+
+ private final Map> mSubscribersMap = new HashMap<>();
+ private final Map mBusesMap = new HashMap<>();
+ private final Set mStickies = new HashSet<>();
+
+ private BusUtils() {
+ init();
+ }
+
+ /**
+ * It'll be injected the bus who have {@link BusUtils.Bus} annotation
+ * by function of {@link BusUtils#registerBus} when execute transform task.
+ */
+ private void init() {/*inject*/}
+
+ private void registerBus(final String name, final Class type) {
+ mBusesMap.put(name, type);
+ }
+
+ public static void register(final Object bus) {
+ getInstance().registerInner(bus);
+ }
+
+ public static void unregister(final Object bus) {
+ getInstance().unregisterInner(bus);
+ }
+
+ private void registerInner(final Object bus) {
+ if (bus == null) return;
+ Class aClass = bus.getClass();
+ Set