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/194] 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/194] 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/194] 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/194] 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: Tue, 18 Jun 2019 23:12:05 +0800
Subject: [PATCH 005/194] see 06/18 log
---
gradle/config/config.gradle | 8 +-
.../com/blankj/launcher/pkg/MainActivity.kt | 18 +-
.../com/blankj/launcher/pkg/SplashActivity.kt | 2 +-
.../com/blankj/lib/base/BaseActivity.java | 17 +-
.../com/blankj/lib/base/BaseFragment.java | 16 +-
.../java/com/blankj/lib/base/IBaseView.java | 6 +-
subutil/export/.gitignore | 1 +
subutil/export/build.gradle | 3 +
subutil/export/proguard-rules.pro | 21 +
subutil/export/src/main/AndroidManifest.xml | 1 +
.../blankj/subutil/export/api/SubUtilApi.java | 16 +
subutil/lib/build.gradle | 1 +
subutil/lib/src/main/AndroidManifest.xml | 12 +-
.../blankj/subutil/util/AppStoreUtils.java | 166 +
.../blankj/subutil/util/ClipboardUtils.java | 2 +
.../com/blankj/subutil/util/CountryUtils.java | 303 +
.../blankj/subutil/util/LocationUtils.java | 2 +
.../java/com/blankj/subutil/util/Utils.java | 143 -
.../blankj/subutil/util/http/SSLConfig.java | 16 +-
.../npm/node_modules/extend/index.js | 2 +-
subutil/pkg/build.gradle | 1 +
subutil/pkg/src/main/AndroidManifest.xml | 8 +
.../subutil/pkg/feature/SubUtilActivity.kt | 29 +-
.../pkg/feature/appStore/AppStoreActivity.kt | 55 +
.../countryCode/CountryCodeActivity.kt | 52 +
.../pkg/feature/location/LocationActivity.kt | 2 +-
.../pkg/feature/pinyin/PinyinActivity.kt | 2 +-
.../subutil/pkg/impl/SubUtilApiImpl.java | 23 +
.../main/res/layout/activity_app_store.xml | 16 +
.../main/res/layout/activity_country_code.xml | 15 +
.../src/main/res/layout/activity_util_sub.xml | 18 +-
subutil/pkg/src/main/res/values/strings.xml | 7 +-
utilcode/export/.gitignore | 1 +
utilcode/export/build.gradle | 3 +
utilcode/export/proguard-rules.pro | 21 +
utilcode/export/src/main/AndroidManifest.xml | 1 +
utilcode/lib/src/main/AndroidManifest.xml | 6 +-
.../blankj/utilcode/util/ActivityUtils.java | 11 +
.../utilcode/util/AdaptScreenUtils.java | 10 +-
.../blankj/utilcode/util/AntiShakeUtils.java | 40 -
.../com/blankj/utilcode/util/ClickUtils.java | 193 +
.../blankj/utilcode/util/KeyboardUtils.java | 32 +-
.../com/blankj/utilcode/util/PathUtils.java | 4 +-
.../com/blankj/utilcode/util/RomUtils.java | 12 +-
.../com/blankj/utilcode/util/SpanUtils.java | 4 +
.../com/blankj/utilcode/util/ToastUtils.java | 6 +-
.../com/blankj/utilcode/util/UriUtils.java | 65 +-
.../java/com/blankj/utilcode/util/Utils.java | 2 +-
.../com/blankj/utilcode/util/ViewUtils.java | 36 +
.../blankj/utilcode/util/GsonUtilsTest.java | 18655 +++++++++++++++-
utilcode/pkg/build.gradle | 1 +
utilcode/pkg/src/main/AndroidManifest.xml | 6 +
.../utilcode/pkg/feature/CoreUtilActivity.kt | 193 +-
.../pkg/feature/activity/ActivityActivity.kt | 62 +-
.../feature/activity/SubActivityActivity.kt | 2 +-
.../feature/adaptScreen/AdaptCloseActivity.kt | 2 +-
.../adaptScreen/AdaptHeightActivity.kt | 2 +-
.../adaptScreen/AdaptScreenActivity.kt | 10 +-
.../feature/adaptScreen/AdaptWidthActivity.kt | 2 +-
.../utilcode/pkg/feature/app/AppActivity.kt | 20 +-
.../utilcode/pkg/feature/bar/BarActivity.kt | 22 +-
.../pkg/feature/bar/BarNavActivity.kt | 4 +-
.../feature/bar/BarNotificationActivity.kt | 4 +-
.../pkg/feature/bar/BarStatusActivity.kt | 2 +-
.../pkg/feature/bar/BarStatusAlphaActivity.kt | 4 +-
.../pkg/feature/bar/BarStatusAlphaFragment.kt | 4 +-
.../pkg/feature/bar/BarStatusColorActivity.kt | 4 +-
.../pkg/feature/bar/BarStatusColorFragment.kt | 4 +-
.../feature/bar/BarStatusCustomActivity.kt | 2 +-
.../feature/bar/BarStatusCustomFragment.kt | 2 +-
.../feature/bar/BarStatusDrawerActivity.kt | 8 +-
.../feature/bar/BarStatusFragmentActivity.kt | 2 +-
.../feature/bar/BarStatusImageViewActivity.kt | 4 +-
.../feature/bar/BarStatusImageViewFragment.kt | 4 +-
.../feature/brightness/BrightnessActivity.kt | 2 +-
.../utilcode/pkg/feature/bus/BusActivity.kt | 8 +-
.../pkg/feature/bus/BusRemoteActivity.kt | 8 +-
.../pkg/feature/clean/CleanActivity.kt | 14 +-
.../pkg/feature/click/ClickActivity.kt | 47 +
.../pkg/feature/device/DeviceActivity.kt | 11 +-
.../feature/flashlight/FlashlightActivity.kt | 2 +-
.../pkg/feature/fragment/ChildFragment.kt | 10 +-
.../pkg/feature/fragment/ContainerFragment.kt | 23 +-
.../pkg/feature/fragment/FragmentActivity.kt | 2 +-
.../pkg/feature/fragment/RootFragment.kt | 2 +-
.../pkg/feature/image/ImageActivity.kt | 2 +-
.../pkg/feature/keyboard/KeyboardActivity.kt | 12 +-
.../utilcode/pkg/feature/log/LogActivity.kt | 34 +-
.../pkg/feature/metaData/MetaDataActivity.kt | 2 +-
.../pkg/feature/network/NetworkActivity.kt | 4 +-
.../utilcode/pkg/feature/path/PathActivity.kt | 2 +-
.../feature/permission/PermissionActivity.kt | 16 +-
.../pkg/feature/phone/PhoneActivity.kt | 12 +-
.../pkg/feature/process/ProcessActivity.kt | 4 +-
.../pkg/feature/reflect/ReflectActivity.kt | 2 +-
.../pkg/feature/resource/ResourceActivity.kt | 8 +-
.../utilcode/pkg/feature/rom/RomActivity.kt | 2 +-
.../pkg/feature/screen/ScreenActivity.kt | 18 +-
.../pkg/feature/sdcard/SDCardActivity.kt | 2 +-
.../pkg/feature/snackbar/SnackbarActivity.kt | 28 +-
.../pkg/feature/spStatic/SPStaticActivity.kt | 16 +-
.../utilcode/pkg/feature/span/SpanActivity.kt | 146 +-
.../pkg/feature/toast/ToastActivity.kt | 24 +-
.../pkg/feature/vibrate/VibrateActivity.kt | 2 +-
.../res/drawable/click_shape_round_rect.xml | 7 +
.../src/main/res/layout/activity_click.xml | 24 +
.../main/res/layout/activity_util_core.xml | 67 +-
utilcode/pkg/src/main/res/values/strings.xml | 9 +-
108 files changed, 20276 insertions(+), 752 deletions(-)
create mode 100644 subutil/export/.gitignore
create mode 100644 subutil/export/build.gradle
create mode 100644 subutil/export/proguard-rules.pro
create mode 100644 subutil/export/src/main/AndroidManifest.xml
create mode 100644 subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
create mode 100644 subutil/lib/src/main/java/com/blankj/subutil/util/AppStoreUtils.java
create mode 100644 subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
delete mode 100644 subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
create mode 100644 subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt
create mode 100644 subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/countryCode/CountryCodeActivity.kt
create mode 100644 subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java
create mode 100755 subutil/pkg/src/main/res/layout/activity_app_store.xml
create mode 100755 subutil/pkg/src/main/res/layout/activity_country_code.xml
create mode 100644 utilcode/export/.gitignore
create mode 100644 utilcode/export/build.gradle
create mode 100644 utilcode/export/proguard-rules.pro
create mode 100644 utilcode/export/src/main/AndroidManifest.xml
delete mode 100644 utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
create mode 100644 utilcode/lib/src/main/java/com/blankj/utilcode/util/ClickUtils.java
create mode 100644 utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java
create mode 100644 utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt
create mode 100644 utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml
create mode 100644 utilcode/pkg/src/main/res/layout/activity_click.xml
diff --git a/gradle/config/config.gradle b/gradle/config/config.gradle
index f1f1b2a479..8ce373681b 100644
--- a/gradle/config/config.gradle
+++ b/gradle/config/config.gradle
@@ -8,8 +8,8 @@ gradle.ext {
compileSdkVersion = 27
minSdkVersion = 14
targetSdkVersion = 27
- versionCode = 1_024_002
- versionName = '1.24.2'// E.g. 1.9.72 => 1,009,072
+ versionCode = 1_024_003
+ versionName = '1.24.3'// E.g. 1.9.72 => 1,009,072
// lib version
kotlin_version = '1.3.10'
@@ -33,10 +33,14 @@ gradle.ext {
launcher_pkg : new DepConfig(":launcher:pkg"),
lib_base : new DepConfig(":lib:base"),
lib_common : new DepConfig(":lib:common"),
+
subutil_app : new DepConfig(":subutil:app"),
+ subutil_export : new DepConfig(":subutil:export"),
subutil_lib : new DepConfig(":subutil:lib"),
subutil_pkg : new DepConfig(":subutil:pkg"),
+
utilcode_app : new DepConfig(":utilcode:app"),
+ utilcode_export : new DepConfig(":utilcode:export"),
utilcode_lib : new DepConfig(true/*是否本地调试*/, ":utilcode:lib", "com.blankj:utilcode:$versionName"),
utilcode_pkg : new DepConfig(":utilcode:pkg"),
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 310b67e132..d51a2e0dee 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
@@ -55,18 +55,20 @@ class MainActivity : CommonDrawerActivity() {
BarUtils.setStatusBarColor4Drawer(mBaseDrawerRootLayout, launcherMainFakeStatusBar, Color.TRANSPARENT, false)
BarUtils.addMarginTopEqualStatusBarHeight(launcherMainToolbar)
- launcherMainCoreUtilBtn.setOnClickListener {
- BusUtils.postStatic("CoreUtilActivity#start", this)
- }
-
- launcherMainSubUtilBtn.setOnClickListener {
- BusUtils.postStatic("SubUtilActivity#start", this)
- }
+ applyDebouncingClickListener(
+ launcherMainCoreUtilBtn,
+ launcherMainSubUtilBtn
+ )
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {
+ when (view.id) {
+ R.id.launcherMainCoreUtilBtn -> BusUtils.postStatic("CoreUtilActivity#start", this)
+ R.id.launcherMainSubUtilBtn -> BusUtils.postStatic("SubUtilActivity#start", this)
+ }
+ }
override fun onBackPressed() {
ActivityUtils.startHomeActivity()
diff --git a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt b/launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt
index 502aacd523..81f8dd019d 100644
--- a/launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt
+++ b/launcher/pkg/src/main/java/com/blankj/launcher/pkg/SplashActivity.kt
@@ -25,7 +25,7 @@ class SplashActivity : CommonBackActivity() {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
}
\ No newline at end of file
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 c346f7c2d3..ef210d0e6b 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
@@ -8,7 +8,7 @@
import android.view.LayoutInflater;
import android.view.View;
-import com.blankj.utilcode.util.AntiShakeUtils;
+import com.blankj.utilcode.util.ClickUtils;
/**
*
@@ -21,6 +21,13 @@
public abstract class BaseActivity extends AppCompatActivity
implements IBaseView {
+ private View.OnClickListener mClickListener = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ onDebouncingClick(v);
+ }
+ };
+
protected View mContentView;
protected Activity mActivity;
@@ -41,11 +48,9 @@ public void setRootLayout(@LayoutRes int layoutId) {
setContentView(mContentView = LayoutInflater.from(this).inflate(layoutId, null));
}
- @Override
- public void onClick(View view) {
- if (AntiShakeUtils.isValid(view)) {
- onWidgetClick(view);
- }
+ public void applyDebouncingClickListener(View... views) {
+ ClickUtils.applyGlobalDebouncing(views, mClickListener);
+ ClickUtils.applyScale(views);
}
}
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 85416a13fe..692ad8a213 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
@@ -15,7 +15,7 @@
import android.view.View;
import android.view.ViewGroup;
-import com.blankj.utilcode.util.AntiShakeUtils;
+import com.blankj.utilcode.util.ClickUtils;
/**
*
@@ -31,12 +31,17 @@ public abstract class BaseFragment extends Fragment
private static final String TAG = "BaseFragment";
private static final String STATE_SAVE_IS_HIDDEN = "STATE_SAVE_IS_HIDDEN";
+ private ClickUtils.OnDebouncingClickListener mDebouncingClick = new ClickUtils.OnDebouncingClickListener() {
+ @Override
+ public void onDebouncingClick(View v) {
+ BaseFragment.this.onDebouncingClick(v);
+ }
+ };
+
protected Activity mActivity;
protected LayoutInflater mInflater;
protected View mContentView;
- private long lastClick = 0;
-
@Override
public void onAttach(Context context) {
super.onAttach(context);
@@ -113,9 +118,8 @@ public void onDestroy() {
super.onDestroy();
}
- @Override
- public void onClick(View view) {
- if (AntiShakeUtils.isValid(view)) onWidgetClick(view);
+ public void applyDebouncingClickListener(View... views) {
+ ClickUtils.applyGlobalDebouncing(views, mDebouncingClick);
}
public T findViewById(@IdRes int id) {
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..d221737d07 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
@@ -2,6 +2,7 @@
import android.os.Bundle;
import android.support.annotation.LayoutRes;
+import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.View;
@@ -14,8 +15,7 @@
* desc :
*
*/
-public interface IBaseView extends View.OnClickListener {
-
+public interface IBaseView {
void initData(@Nullable Bundle bundle);
@@ -27,5 +27,5 @@ public interface IBaseView extends View.OnClickListener {
void doBusiness();
- void onWidgetClick(View view);
+ void onDebouncingClick(@NonNull View view);
}
diff --git a/subutil/export/.gitignore b/subutil/export/.gitignore
new file mode 100644
index 0000000000..796b96d1c4
--- /dev/null
+++ b/subutil/export/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/subutil/export/build.gradle b/subutil/export/build.gradle
new file mode 100644
index 0000000000..8bee85e640
--- /dev/null
+++ b/subutil/export/build.gradle
@@ -0,0 +1,3 @@
+apply {
+ from "${rootDir.path}/gradle/config/configLib.gradle"
+}
\ No newline at end of file
diff --git a/subutil/export/proguard-rules.pro b/subutil/export/proguard-rules.pro
new file mode 100644
index 0000000000..f1b424510d
--- /dev/null
+++ b/subutil/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/subutil/export/src/main/AndroidManifest.xml b/subutil/export/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..de00a6d73e
--- /dev/null
+++ b/subutil/export/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
diff --git a/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java b/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
new file mode 100644
index 0000000000..cbc9e35c08
--- /dev/null
+++ b/subutil/export/src/main/java/com/blankj/subutil/export/api/SubUtilApi.java
@@ -0,0 +1,16 @@
+package com.blankj.subutil.export.api;
+
+import android.content.Context;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/06/09
+ * desc :
+ *
+ */
+public interface SubUtilApi {
+
+ void startSubUtilActivity(Context context);
+}
diff --git a/subutil/lib/build.gradle b/subutil/lib/build.gradle
index 9dcbe0b542..1c7c5996c0 100644
--- a/subutil/lib/build.gradle
+++ b/subutil/lib/build.gradle
@@ -15,6 +15,7 @@ readme {
dependencies {
compileOnly gradle.ext.dep.support_appcompat_v7
compileOnly gradle.ext.dep.support_design
+ compileOnly gradle.ext.dep.utilcode_lib
api(gradle.ext.dep.glide) {
exclude group: "com.android.support"
}
diff --git a/subutil/lib/src/main/AndroidManifest.xml b/subutil/lib/src/main/AndroidManifest.xml
index a698fc9a44..728d4495b0 100644
--- a/subutil/lib/src/main/AndroidManifest.xml
+++ b/subutil/lib/src/main/AndroidManifest.xml
@@ -1,11 +1 @@
-
-
-
-
-
-
+
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/AppStoreUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/AppStoreUtils.java
new file mode 100644
index 0000000000..cf6e49cedc
--- /dev/null
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/AppStoreUtils.java
@@ -0,0 +1,166 @@
+package com.blankj.subutil.util;
+
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
+import android.net.Uri;
+import android.text.TextUtils;
+import android.util.Log;
+
+import com.blankj.utilcode.util.RomUtils;
+import com.blankj.utilcode.util.Utils;
+
+import java.util.List;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2019/05/20
+ * desc : utils about app store
+ *
+ */
+public class AppStoreUtils {
+
+ private static final String TAG = "AppStoreUtils";
+
+ private static final String GOOGLE_PLAY_APP_STORE_PACKAGE_NAME = "com.android.vending";
+
+ /**
+ * 获取跳转到应用商店的 Intent
+ *
+ * @return 跳转到应用商店的 Intent
+ */
+ public static Intent getAppStoreIntent() {
+ return getAppStoreIntent(Utils.getApp().getPackageName(), false);
+ }
+
+ /**
+ * 获取跳转到应用商店的 Intent
+ *
+ * @param isIncludeGooglePlayStore 是否包括 Google Play 商店
+ * @return 跳转到应用商店的 Intent
+ */
+ public static Intent getAppStoreIntent(boolean isIncludeGooglePlayStore) {
+ return getAppStoreIntent(Utils.getApp().getPackageName(), isIncludeGooglePlayStore);
+ }
+
+ /**
+ * 获取跳转到应用商店的 Intent
+ *
+ * @param packageName 包名
+ * @return 跳转到应用商店的 Intent
+ */
+ public static Intent getAppStoreIntent(final String packageName) {
+ return getAppStoreIntent(packageName, false);
+ }
+
+ /**
+ * 获取跳转到应用商店的 Intent
+ * 优先跳转到手机自带的应用市场
+ *
+ * @param packageName 包名
+ * @param isIncludeGooglePlayStore 是否包括 Google Play 商店
+ * @return 跳转到应用商店的 Intent
+ */
+ public static Intent getAppStoreIntent(final String packageName, boolean isIncludeGooglePlayStore) {
+ if (RomUtils.isSamsung()) {// 三星单独处理跳转三星市场
+ Intent samsungAppStoreIntent = getSamsungAppStoreIntent(packageName);
+ if (samsungAppStoreIntent != null) return samsungAppStoreIntent;
+ }
+ if (RomUtils.isLeeco()) {// 乐视单独处理跳转乐视市场
+ Intent leecoAppStoreIntent = getLeecoAppStoreIntent(packageName);
+ if (leecoAppStoreIntent != null) return leecoAppStoreIntent;
+ }
+
+ Uri uri = Uri.parse("market://details?id=" + packageName);
+ Intent intent = new Intent(Intent.ACTION_VIEW, uri);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ List resolveInfos = Utils.getApp().getPackageManager()
+ .queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
+ if (resolveInfos == null || resolveInfos.size() == 0) {
+ Log.e(TAG, "No app store!");
+ return null;
+ }
+ Intent googleIntent = null;
+ for (ResolveInfo resolveInfo : resolveInfos) {
+ String pkgName = resolveInfo.activityInfo.packageName;
+ if (!GOOGLE_PLAY_APP_STORE_PACKAGE_NAME.equals(pkgName)) {
+ if (isAppSystem(pkgName)) {
+ intent.setPackage(pkgName);
+ return intent;
+ }
+ } else {
+ intent.setPackage(GOOGLE_PLAY_APP_STORE_PACKAGE_NAME);
+ googleIntent = intent;
+ }
+ }
+ if (isIncludeGooglePlayStore && googleIntent != null) {
+ return googleIntent;
+ }
+
+ intent.setPackage(resolveInfos.get(0).activityInfo.packageName);
+ return intent;
+ }
+
+ private static boolean go2NormalAppStore(String packageName) {
+ Intent intent = getNormalAppStoreIntent();
+ if (intent == null) return false;
+ intent.setData(Uri.parse("market://details?id=" + packageName));
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ Utils.getApp().startActivity(intent);
+ return true;
+ }
+
+ private static Intent getNormalAppStoreIntent() {
+ Intent intent = new Intent(Intent.ACTION_VIEW);
+ Uri uri = Uri.parse("market://details?id=" + Utils.getApp().getPackageName());
+ intent.setData(uri);
+ if (getAvailableIntentSize(intent) > 0) {
+ return intent;
+ }
+ return null;
+ }
+
+ private static Intent getSamsungAppStoreIntent(final String packageName) {
+ Intent intent = new Intent();
+ intent.setClassName("com.sec.android.app.samsungapps", "com.sec.android.app.samsungapps.Main");
+ intent.setData(Uri.parse("http://www.samsungapps.com/appquery/appDetail.as?appId=" + packageName));
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ if (getAvailableIntentSize(intent) > 0) {
+ return intent;
+ }
+ return null;
+ }
+
+ private static Intent getLeecoAppStoreIntent(final String packageName) {
+ Intent intent = new Intent();
+ intent.setClassName("com.letv.app.appstore", "com.letv.app.appstore.appmodule.details.DetailsActivity");
+ intent.setAction("com.letv.app.appstore.appdetailactivity");
+ intent.putExtra("packageName", packageName);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ if (getAvailableIntentSize(intent) > 0) {
+ return intent;
+ }
+ return null;
+ }
+
+ private static int getAvailableIntentSize(final Intent intent) {
+ return Utils.getApp().getPackageManager()
+ .queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY)
+ .size();
+ }
+
+ private static boolean isAppSystem(final String packageName) {
+ if (TextUtils.isEmpty(packageName)) return false;
+ try {
+ PackageManager pm = Utils.getApp().getPackageManager();
+ ApplicationInfo ai = pm.getApplicationInfo(packageName, 0);
+ return ai != null && (ai.flags & ApplicationInfo.FLAG_SYSTEM) != 0;
+ } catch (PackageManager.NameNotFoundException e) {
+ e.printStackTrace();
+ return false;
+ }
+ }
+}
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/ClipboardUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/ClipboardUtils.java
index 6f94e8c466..69e5144e3b 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/ClipboardUtils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/ClipboardUtils.java
@@ -6,6 +6,8 @@
import android.content.Intent;
import android.net.Uri;
+import com.blankj.utilcode.util.Utils;
+
/**
*
* author: Blankj
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
new file mode 100644
index 0000000000..dcb56b065c
--- /dev/null
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
@@ -0,0 +1,303 @@
+package com.blankj.subutil.util;
+
+import android.content.Context;
+import android.telephony.TelephonyManager;
+
+import com.blankj.utilcode.util.Utils;
+
+import java.util.HashMap;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2019/06/11
+ * desc : utils about country code
+ *
+ */
+public class CountryUtils {
+
+ private static HashMap countryCodeMap;
+
+ public static String getCountryCodeBySim(String defaultValue) {
+ String code = getCountryCodeFromMap().get(getCountryBySim());
+ if (code == null) {
+ return defaultValue;
+ }
+ return code;
+ }
+
+ public static String getCountryCodeByLanguage(String defaultValue) {
+ String code = getCountryCodeFromMap().get(getCountryByLanguage());
+ if (code == null) {
+ return defaultValue;
+ }
+ return code;
+ }
+
+ public static String getCountryByLanguage() {
+ return Utils.getApp().getResources().getConfiguration().locale.getCountry();
+ }
+
+ public static String getCountryBySim() {
+ TelephonyManager manager = (TelephonyManager) Utils.getApp().getSystemService(Context.TELEPHONY_SERVICE);
+ if (manager != null) {
+ return manager.getSimCountryIso().toUpperCase();
+ }
+ return "";
+ }
+
+ private static HashMap getCountryCodeFromMap() {
+ if (countryCodeMap == null) {
+ countryCodeMap = new HashMap<>(256);
+ countryCodeMap.put("AL", "+355");
+ countryCodeMap.put("DZ", "+213");
+ countryCodeMap.put("AF", "+93");
+ countryCodeMap.put("AR", "+54");
+ countryCodeMap.put("AE", "+971");
+ countryCodeMap.put("AW", "+297");
+ countryCodeMap.put("OM", "+968");
+ countryCodeMap.put("AZ", "+994");
+ countryCodeMap.put("AC", "+247");
+ countryCodeMap.put("EG", "+20");
+ countryCodeMap.put("ET", "+251");
+ countryCodeMap.put("IE", "+353");
+ countryCodeMap.put("EE", "+372");
+ countryCodeMap.put("AD", "+376");
+ countryCodeMap.put("AO", "+244");
+ countryCodeMap.put("AI", "+1");
+ countryCodeMap.put("AG", "+1");
+ countryCodeMap.put("AT", "+43");
+ countryCodeMap.put("AX", "+358");
+ countryCodeMap.put("AU", "+61");
+ countryCodeMap.put("BB", "+1");
+ countryCodeMap.put("PG", "+675");
+ countryCodeMap.put("BS", "+1");
+ countryCodeMap.put("PK", "+92");
+ countryCodeMap.put("PY", "+595");
+ countryCodeMap.put("PS", "+970");
+ countryCodeMap.put("BH", "+973");
+ countryCodeMap.put("PA", "+507");
+ countryCodeMap.put("BR", "+55");
+ countryCodeMap.put("BY", "+375");
+ countryCodeMap.put("BM", "+1");
+ countryCodeMap.put("BG", "+359");
+ countryCodeMap.put("MP", "+1");
+ countryCodeMap.put("BJ", "+229");
+ countryCodeMap.put("BE", "+32");
+ countryCodeMap.put("IS", "+354");
+ countryCodeMap.put("PR", "+1");
+ countryCodeMap.put("PL", "+48");
+ countryCodeMap.put("BA", "+387");
+ countryCodeMap.put("BO", "+591");
+ countryCodeMap.put("BZ", "+501");
+ countryCodeMap.put("BW", "+267");
+ countryCodeMap.put("BT", "+975");
+ countryCodeMap.put("BF", "+226");
+ countryCodeMap.put("BI", "+257");
+ countryCodeMap.put("KP", "+850");
+ countryCodeMap.put("GQ", "+240");
+ countryCodeMap.put("DK", "+45");
+ countryCodeMap.put("DE", "+49");
+ countryCodeMap.put("TL", "+670");
+ countryCodeMap.put("TG", "+228");
+ countryCodeMap.put("DO", "+1");
+ countryCodeMap.put("DM", "+1");
+ countryCodeMap.put("RU", "+7");
+ countryCodeMap.put("EC", "+593");
+ countryCodeMap.put("ER", "+291");
+ countryCodeMap.put("FR", "+33");
+ countryCodeMap.put("FO", "+298");
+ countryCodeMap.put("PF", "+689");
+ countryCodeMap.put("GF", "+594");
+ countryCodeMap.put("VA", "+39");
+ countryCodeMap.put("PH", "+63");
+ countryCodeMap.put("FJ", "+679");
+ countryCodeMap.put("FI", "+358");
+ countryCodeMap.put("CV", "+238");
+ countryCodeMap.put("FK", "+500");
+ countryCodeMap.put("GM", "+220");
+ countryCodeMap.put("CG", "+242");
+ countryCodeMap.put("CD", "+243");
+ countryCodeMap.put("CO", "+57");
+ countryCodeMap.put("CR", "+506");
+ countryCodeMap.put("GG", "+44");
+ countryCodeMap.put("GD", "+1");
+ countryCodeMap.put("GL", "+299");
+ countryCodeMap.put("GE", "+995");
+ countryCodeMap.put("CU", "+53");
+ countryCodeMap.put("GP", "+590");
+ countryCodeMap.put("GU", "+1");
+ countryCodeMap.put("GY", "+592");
+ countryCodeMap.put("KZ", "+7");
+ countryCodeMap.put("HT", "+509");
+ countryCodeMap.put("KR", "+82");
+ countryCodeMap.put("NL", "+31");
+ countryCodeMap.put("BQ", "+599");
+ countryCodeMap.put("SX", "+1");
+ countryCodeMap.put("ME", "+382");
+ countryCodeMap.put("HN", "+504");
+ countryCodeMap.put("KI", "+686");
+ countryCodeMap.put("DJ", "+253");
+ countryCodeMap.put("KG", "+996");
+ countryCodeMap.put("GN", "+224");
+ countryCodeMap.put("GW", "+245");
+ countryCodeMap.put("CA", "+1");
+ countryCodeMap.put("GH", "+233");
+ countryCodeMap.put("GA", "+241");
+ countryCodeMap.put("KH", "+855");
+ countryCodeMap.put("CZ", "+420");
+ countryCodeMap.put("ZW", "+263");
+ countryCodeMap.put("CM", "+237");
+ countryCodeMap.put("QA", "+974");
+ countryCodeMap.put("KY", "+1");
+ countryCodeMap.put("CC", "+61");
+ countryCodeMap.put("KM", "+269");
+ countryCodeMap.put("XK", "+383");
+ countryCodeMap.put("CI", "+225");
+ countryCodeMap.put("KW", "+965");
+ countryCodeMap.put("HR", "+385");
+ countryCodeMap.put("KE", "+254");
+ countryCodeMap.put("CK", "+682");
+ countryCodeMap.put("CW", "+599");
+ countryCodeMap.put("LV", "+371");
+ countryCodeMap.put("LS", "+266");
+ countryCodeMap.put("LA", "+856");
+ countryCodeMap.put("LB", "+961");
+ countryCodeMap.put("LT", "+370");
+ countryCodeMap.put("LR", "+231");
+ countryCodeMap.put("LY", "+218");
+ countryCodeMap.put("LI", "+423");
+ countryCodeMap.put("RE", "+262");
+ countryCodeMap.put("LU", "+352");
+ countryCodeMap.put("RW", "+250");
+ countryCodeMap.put("RO", "+40");
+ countryCodeMap.put("MG", "+261");
+ countryCodeMap.put("IM", "+44");
+ countryCodeMap.put("MV", "+960");
+ countryCodeMap.put("MT", "+356");
+ countryCodeMap.put("MW", "+265");
+ countryCodeMap.put("MY", "+60");
+ countryCodeMap.put("ML", "+223");
+ countryCodeMap.put("MK", "+389");
+ countryCodeMap.put("MH", "+692");
+ countryCodeMap.put("MQ", "+596");
+ countryCodeMap.put("YT", "+262");
+ countryCodeMap.put("MU", "+230");
+ countryCodeMap.put("MR", "+222");
+ countryCodeMap.put("US", "+1");
+ countryCodeMap.put("AS", "+1");
+ countryCodeMap.put("VI", "+1");
+ countryCodeMap.put("MN", "+976");
+ countryCodeMap.put("MS", "+1");
+ countryCodeMap.put("BD", "+880");
+ countryCodeMap.put("PE", "+51");
+ countryCodeMap.put("FM", "+691");
+ countryCodeMap.put("MM", "+95");
+ countryCodeMap.put("MD", "+373");
+ countryCodeMap.put("MA", "+212");
+ countryCodeMap.put("MC", "+377");
+ countryCodeMap.put("MZ", "+258");
+ countryCodeMap.put("MX", "+52");
+ countryCodeMap.put("NA", "+264");
+ countryCodeMap.put("ZA", "+27");
+ countryCodeMap.put("SS", "+211");
+ countryCodeMap.put("NR", "+674");
+ countryCodeMap.put("NI", "+505");
+ countryCodeMap.put("NP", "+977");
+ countryCodeMap.put("NE", "+227");
+ countryCodeMap.put("NG", "+234");
+ countryCodeMap.put("NU", "+683");
+ countryCodeMap.put("NO", "+47");
+ countryCodeMap.put("NF", "+672");
+ countryCodeMap.put("PW", "+680");
+ countryCodeMap.put("PT", "+351");
+ countryCodeMap.put("JP", "+81");
+ countryCodeMap.put("SE", "+46");
+ countryCodeMap.put("CH", "+41");
+ countryCodeMap.put("SV", "+503");
+ countryCodeMap.put("WS", "+685");
+ countryCodeMap.put("RS", "+381");
+ countryCodeMap.put("SL", "+232");
+ countryCodeMap.put("SN", "+221");
+ countryCodeMap.put("CY", "+357");
+ countryCodeMap.put("SC", "+248");
+ countryCodeMap.put("SA", "+966");
+ countryCodeMap.put("BL", "+590");
+ countryCodeMap.put("CX", "+61");
+ countryCodeMap.put("ST", "+239");
+ countryCodeMap.put("SH", "+290");
+ countryCodeMap.put("PN", "+870");
+ countryCodeMap.put("KN", "+1");
+ countryCodeMap.put("LC", "+1");
+ countryCodeMap.put("MF", "+590");
+ countryCodeMap.put("SM", "+378");
+ countryCodeMap.put("PM", "+508");
+ countryCodeMap.put("VC", "+1");
+ countryCodeMap.put("LK", "+94");
+ countryCodeMap.put("SK", "+421");
+ countryCodeMap.put("SI", "+386");
+ countryCodeMap.put("SJ", "+47");
+ countryCodeMap.put("SZ", "+268");
+ countryCodeMap.put("SD", "+249");
+ countryCodeMap.put("SR", "+597");
+ countryCodeMap.put("SB", "+677");
+ countryCodeMap.put("SO", "+252");
+ countryCodeMap.put("TJ", "+992");
+ countryCodeMap.put("TH", "+66");
+ countryCodeMap.put("TZ", "+255");
+ countryCodeMap.put("TO", "+676");
+ countryCodeMap.put("TC", "+1");
+ countryCodeMap.put("TA", "+290");
+ countryCodeMap.put("TT", "+1");
+ countryCodeMap.put("TN", "+216");
+ countryCodeMap.put("TV", "+688");
+ countryCodeMap.put("TR", "+90");
+ countryCodeMap.put("TM", "+993");
+ countryCodeMap.put("TK", "+690");
+ countryCodeMap.put("WF", "+681");
+ countryCodeMap.put("VU", "+678");
+ countryCodeMap.put("GT", "+502");
+ countryCodeMap.put("VE", "+58");
+ countryCodeMap.put("BN", "+673");
+ countryCodeMap.put("UG", "+256");
+ countryCodeMap.put("UA", "+380");
+ countryCodeMap.put("UY", "+598");
+ countryCodeMap.put("UZ", "+998");
+ countryCodeMap.put("GR", "+30");
+ countryCodeMap.put("ES", "+34");
+ countryCodeMap.put("EH", "+212");
+ countryCodeMap.put("SG", "+65");
+ countryCodeMap.put("NC", "+687");
+ countryCodeMap.put("NZ", "+64");
+ countryCodeMap.put("HU", "+36");
+ countryCodeMap.put("SY", "+963");
+ countryCodeMap.put("JM", "+1");
+ countryCodeMap.put("AM", "+374");
+ countryCodeMap.put("YE", "+967");
+ countryCodeMap.put("IQ", "+964");
+ countryCodeMap.put("UM", "+1");
+ countryCodeMap.put("IR", "+98");
+ countryCodeMap.put("IL", "+972");
+ countryCodeMap.put("IT", "+39");
+ countryCodeMap.put("IN", "+91");
+ countryCodeMap.put("ID", "+62");
+ countryCodeMap.put("GB", "+44");
+ countryCodeMap.put("VG", "+1");
+ countryCodeMap.put("IO", "+246");
+ countryCodeMap.put("JO", "+962");
+ countryCodeMap.put("VN", "+84");
+ countryCodeMap.put("ZM", "+260");
+ countryCodeMap.put("JE", "+44");
+ countryCodeMap.put("TD", "+235");
+ countryCodeMap.put("GI", "+350");
+ countryCodeMap.put("CL", "+56");
+ countryCodeMap.put("CF", "+236");
+ countryCodeMap.put("CN", "+86");
+ countryCodeMap.put("MO", "+853");
+ countryCodeMap.put("TW", "+886");
+ countryCodeMap.put("HK", "+852");
+ }
+ return countryCodeMap;
+ }
+}
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..1e81fcb203 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
@@ -14,6 +14,8 @@
import android.support.annotation.RequiresPermission;
import android.util.Log;
+import com.blankj.utilcode.util.Utils;
+
import java.io.IOException;
import java.util.List;
import java.util.Locale;
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
deleted file mode 100644
index 9cbf4e06fd..0000000000
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/Utils.java
+++ /dev/null
@@ -1,143 +0,0 @@
-package com.blankj.subutil.util;
-
-import android.annotation.SuppressLint;
-import android.app.Application;
-import android.content.ContentProvider;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.net.Uri;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-
-import java.lang.reflect.InvocationTargetException;
-
-/**
- *
- * author:
- * ___ ___ ___ ___
- * _____ / /\ /__/\ /__/| / /\
- * / /::\ / /::\ \ \:\ | |:| / /:/
- * / /:/\:\ ___ ___ / /:/\:\ \ \:\ | |:| /__/::\
- * / /:/~/::\ /__/\ / /\ / /:/~/::\ _____\__\:\ __| |:| \__\/\:\
- * /__/:/ /:/\:| \ \:\ / /:/ /__/:/ /:/\:\ /__/::::::::\ /__/\_|:|____ \ \:\
- * \ \:\/:/~/:/ \ \:\ /:/ \ \:\/:/__\/ \ \:\~~\~~\/ \ \:\/:::::/ \__\:\
- * \ \::/ /:/ \ \:\/:/ \ \::/ \ \:\ ~~~ \ \::/~~~~ / /:/
- * \ \:\/:/ \ \::/ \ \:\ \ \:\ \ \:\ /__/:/
- * \ \::/ \__\/ \ \:\ \ \:\ \ \:\ \__\/
- * \__\/ \__\/ \__\/ \__\/
- * blog : http://blankj.com
- * time : 16/12/08
- * desc : utils about initialization
- *
- */
-public final class Utils {
-
- @SuppressLint("StaticFieldLeak")
- private static Application sApplication;
-
- private Utils() {
- throw new UnsupportedOperationException("u can't instantiate me...");
- }
-
- /**
- * Init utils.
- * Init it in the class of Application.
- *
- * @param context context
- */
- public static void init(final Context context) {
- if (context == null) {
- init(getApplicationByReflect());
- return;
- }
- init((Application) context.getApplicationContext());
- }
-
- /**
- * Init utils.
- * Init it in the class of Application.
- *
- * @param app application
- */
- public static void init(final Application app) {
- if (sApplication == null) {
- if (app == null) {
- Utils.sApplication = getApplicationByReflect();
- } else {
- Utils.sApplication = app;
- }
- }
- }
-
- /**
- * Return the context of Application object.
- *
- * @return the context of Application object
- */
- public static Application getApp() {
- if (sApplication != null) return sApplication;
- return getApplicationByReflect();
- }
-
- private static Application getApplicationByReflect() {
- try {
- @SuppressLint("PrivateApi")
- Class> activityThread = Class.forName("android.app.ActivityThread");
- Object at = activityThread.getMethod("currentActivityThread").invoke(null);
- Object app = activityThread.getMethod("getApplication").invoke(at);
- if (app == null) {
- throw new NullPointerException("u should init first");
- }
- init((Application) app);
- return sApplication;
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (InvocationTargetException e) {
- e.printStackTrace();
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- }
- throw new NullPointerException("u should init first");
- }
-
-
- public static final class ContentProvider4SubUtil extends ContentProvider {
-
- @Override
- public boolean onCreate() {
- Utils.init(getContext());
- return true;
- }
-
- @Nullable
- @Override
- public Cursor query(@NonNull Uri uri, @Nullable String[] projection, @Nullable String selection, @Nullable String[] selectionArgs, @Nullable String sortOrder) {
- return null;
- }
-
- @Nullable
- @Override
- public String getType(@NonNull Uri uri) {
- return null;
- }
-
- @Nullable
- @Override
- public Uri insert(@NonNull Uri uri, @Nullable ContentValues values) {
- return null;
- }
-
- @Override
- public int delete(@NonNull Uri uri, @Nullable String selection, @Nullable String[] selectionArgs) {
- return 0;
- }
-
- @Override
- public int update(@NonNull Uri uri, @Nullable ContentValues values, @Nullable String selection, @Nullable String[] selectionArgs) {
- return 0;
- }
- }
-}
\ No newline at end of file
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..6d6a76d53e 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
@@ -66,11 +66,11 @@ private static class DefaultSSLSocketFactory extends SSLSocketFactory {
new X509ExtendedTrustManager() {
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkClientTrusted(X509Certificate[] chain, String authType) { /**/ }
+ public void checkClientTrusted(X509Certificate[] chain, String authType) {/**/}
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkServerTrusted(X509Certificate[] chain, String authType) { /**/ }
+ public void checkServerTrusted(X509Certificate[] chain, String authType) {/**/}
@Override
public X509Certificate[] getAcceptedIssuers() {
@@ -79,19 +79,19 @@ public X509Certificate[] getAcceptedIssuers() {
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkClientTrusted(X509Certificate[] chain, String authType, Socket socket) { /**/ }
+ public void checkClientTrusted(X509Certificate[] chain, String authType, Socket socket) {/**/}
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkServerTrusted(X509Certificate[] chain, String authType, Socket socket) { /**/ }
+ public void checkServerTrusted(X509Certificate[] chain, String authType, Socket socket) {/**/}
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkClientTrusted(X509Certificate[] chain, String authType, SSLEngine engine) { /**/ }
+ public void checkClientTrusted(X509Certificate[] chain, String authType, SSLEngine engine) {/**/}
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkServerTrusted(X509Certificate[] chain, String authType, SSLEngine engine) { /**/ }
+ public void checkServerTrusted(X509Certificate[] chain, String authType, SSLEngine engine) {/**/}
}
};
} else {
@@ -99,11 +99,11 @@ public void checkServerTrusted(X509Certificate[] chain, String authType, SSLEngi
new X509TrustManager() {
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkClientTrusted(X509Certificate[] chain, String authType) { /**/ }
+ public void checkClientTrusted(X509Certificate[] chain, String authType) {/**/}
@SuppressLint("TrustAllX509TrustManager")
@Override
- public void checkServerTrusted(X509Certificate[] chain, String authType) { /**/ }
+ public void checkServerTrusted(X509Certificate[] chain, String authType) {/**/}
@Override
public X509Certificate[] getAcceptedIssuers() {
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/node_modules/npm/node_modules/extend/index.js b/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/node_modules/npm/node_modules/extend/index.js
index 2aa3faae68..278b7467da 100644
--- a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/node_modules/npm/node_modules/extend/index.js
+++ b/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/node_modules/npm/node_modules/extend/index.js
@@ -28,7 +28,7 @@ var isPlainObject = function isPlainObject(obj) {
// Own properties are enumerated firstly, so to speed up,
// if last one is own, then all properties are own.
var key;
- for (key in obj) { /**/ }
+ for (key in obj) {/**/}
return typeof key === 'undefined' || hasOwn.call(obj, key);
};
diff --git a/subutil/pkg/build.gradle b/subutil/pkg/build.gradle
index 637f119cc4..2d7d216427 100644
--- a/subutil/pkg/build.gradle
+++ b/subutil/pkg/build.gradle
@@ -4,5 +4,6 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
+ api gradle.ext.dep.subutil_export
api gradle.ext.dep.lib_common
}
\ No newline at end of file
diff --git a/subutil/pkg/src/main/AndroidManifest.xml b/subutil/pkg/src/main/AndroidManifest.xml
index 160ed14737..70df2a010c 100644
--- a/subutil/pkg/src/main/AndroidManifest.xml
+++ b/subutil/pkg/src/main/AndroidManifest.xml
@@ -11,6 +11,14 @@
android:name=".feature.SubUtilActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:launchMode="singleTop" />
+
+
AppStoreActivity.start(this)
+ R.id.subUtilCountryCodeBtn -> CountryCodeActivity.start(this)
+ R.id.subUtilLocationBtn -> LocationActivity.start(this)
+ R.id.subUtilPinyinBtn -> PinyinActivity.start(this)
+ }
}
}
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt
new file mode 100644
index 0000000000..49df646b3e
--- /dev/null
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/appStore/AppStoreActivity.kt
@@ -0,0 +1,55 @@
+package com.blankj.subutil.pkg.feature.appStore
+
+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.subutil.pkg.R
+import com.blankj.subutil.util.AppStoreUtils
+import com.blankj.utilcode.util.ActivityUtils
+import kotlinx.android.synthetic.main.activity_app_store.*
+
+/**
+ * ```
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 17/02/01
+ * desc : demo about PinyinUtils
+ * ```
+ */
+class AppStoreActivity : CommonTitleActivity() {
+
+ companion object {
+ fun start(context: Context) {
+ val starter = Intent(context, AppStoreActivity::class.java)
+ context.startActivity(starter)
+ }
+ }
+
+ override fun bindTitle(): CharSequence {
+ return getString(R.string.demo_app_store)
+ }
+
+ override fun initData(bundle: Bundle?) {}
+
+ override fun bindLayout(): Int {
+ return R.layout.activity_app_store
+ }
+
+ override fun initView(savedInstanceState: Bundle?, contentView: View?) {
+ applyDebouncingClickListener(appStoreSystem)
+ }
+
+ override fun doBusiness() {}
+
+ override fun onDebouncingClick(view: View) {
+ when (view.id) {
+ R.id.appStoreSystem -> {
+ AppStoreUtils.getAppStoreIntent("com.tencent.mm")?.apply {
+ ActivityUtils.startActivity(this)
+ }
+ }
+ }
+ }
+}
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/countryCode/CountryCodeActivity.kt b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/countryCode/CountryCodeActivity.kt
new file mode 100644
index 0000000000..6b5b380e5c
--- /dev/null
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/countryCode/CountryCodeActivity.kt
@@ -0,0 +1,52 @@
+package com.blankj.subutil.pkg.feature.countryCode
+
+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.subutil.pkg.R
+import com.blankj.subutil.util.CountryUtils
+import com.blankj.utilcode.util.SpanUtils
+import kotlinx.android.synthetic.main.activity_country_code.*
+
+/**
+ * ```
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 17/02/01
+ * desc : demo about PinyinUtils
+ * ```
+ */
+class CountryCodeActivity : CommonTitleActivity() {
+
+ companion object {
+ fun start(context: Context) {
+ val starter = Intent(context, CountryCodeActivity::class.java)
+ context.startActivity(starter)
+ }
+ }
+
+ override fun bindTitle(): CharSequence {
+ return getString(R.string.demo_country_code)
+ }
+
+ override fun initData(bundle: Bundle?) {}
+
+ override fun bindLayout(): Int {
+ return R.layout.activity_country_code
+ }
+
+ override fun initView(savedInstanceState: Bundle?, contentView: View?) {
+ SpanUtils.with(countryCodeAboutTv)
+ .appendLine("getCountryByLanguage: " + CountryUtils.getCountryByLanguage())
+ .appendLine("getCountryBySim: " + CountryUtils.getCountryBySim())
+ .appendLine("getCountryCodeByLanguage: " + CountryUtils.getCountryCodeByLanguage("Default"))
+ .appendLine("getCountryCodeBySim: " + CountryUtils.getCountryCodeBySim("Default"))
+ .create()
+ }
+
+ override fun doBusiness() {}
+
+ override fun onDebouncingClick(view: View) {}
+}
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt
index 0bba8f7249..55ceba2c92 100755
--- a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location/LocationActivity.kt
@@ -90,7 +90,7 @@ class LocationActivity : CommonTitleActivity() {
bindService(Intent(this, LocationService::class.java), conn, Context.BIND_AUTO_CREATE)
}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun onDestroy() {
unbindService(conn)
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt
index 11ff994eca..655b492f8f 100644
--- a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin/PinyinActivity.kt
@@ -60,5 +60,5 @@ class PinyinActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java
new file mode 100644
index 0000000000..73d8d06347
--- /dev/null
+++ b/subutil/pkg/src/main/java/com/blankj/subutil/pkg/impl/SubUtilApiImpl.java
@@ -0,0 +1,23 @@
+package com.blankj.subutil.pkg.impl;
+
+import android.content.Context;
+
+import com.blankj.subutil.export.api.SubUtilApi;
+import com.blankj.subutil.pkg.feature.SubUtilActivity;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/06/09
+ * desc :
+ *
+ */
+public class SubUtilApiImpl implements SubUtilApi {
+
+ @Override
+ public void startSubUtilActivity(Context context) {
+ SubUtilActivity.Companion.start(context);
+ }
+
+}
diff --git a/subutil/pkg/src/main/res/layout/activity_app_store.xml b/subutil/pkg/src/main/res/layout/activity_app_store.xml
new file mode 100755
index 0000000000..967593131f
--- /dev/null
+++ b/subutil/pkg/src/main/res/layout/activity_app_store.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/subutil/pkg/src/main/res/layout/activity_country_code.xml b/subutil/pkg/src/main/res/layout/activity_country_code.xml
new file mode 100755
index 0000000000..9b7f2bfa1e
--- /dev/null
+++ b/subutil/pkg/src/main/res/layout/activity_country_code.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/subutil/pkg/src/main/res/layout/activity_util_sub.xml b/subutil/pkg/src/main/res/layout/activity_util_sub.xml
index c2b6c5684f..a5ee2324b9 100644
--- a/subutil/pkg/src/main/res/layout/activity_util_sub.xml
+++ b/subutil/pkg/src/main/res/layout/activity_util_sub.xml
@@ -7,17 +7,31 @@
android:padding="@dimen/spacing_16">
+
+
+
+
diff --git a/subutil/pkg/src/main/res/values/strings.xml b/subutil/pkg/src/main/res/values/strings.xml
index 0d85aa5b71..1807edb746 100644
--- a/subutil/pkg/src/main/res/values/strings.xml
+++ b/subutil/pkg/src/main/res/values/strings.xml
@@ -1,5 +1,10 @@
+ App Store Demo
+ Country Code Demo
LocationUtils Demo
PinyinUtils Demo
-
+
+
+ Go System App Store
+
\ No newline at end of file
diff --git a/utilcode/export/.gitignore b/utilcode/export/.gitignore
new file mode 100644
index 0000000000..796b96d1c4
--- /dev/null
+++ b/utilcode/export/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/utilcode/export/build.gradle b/utilcode/export/build.gradle
new file mode 100644
index 0000000000..8bee85e640
--- /dev/null
+++ b/utilcode/export/build.gradle
@@ -0,0 +1,3 @@
+apply {
+ from "${rootDir.path}/gradle/config/configLib.gradle"
+}
\ No newline at end of file
diff --git a/utilcode/export/proguard-rules.pro b/utilcode/export/proguard-rules.pro
new file mode 100644
index 0000000000..f1b424510d
--- /dev/null
+++ b/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/utilcode/export/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..9bbbcc3210
--- /dev/null
+++ b/utilcode/export/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
diff --git a/utilcode/lib/src/main/AndroidManifest.xml b/utilcode/lib/src/main/AndroidManifest.xml
index ed1a485e2a..64011d907e 100644
--- a/utilcode/lib/src/main/AndroidManifest.xml
+++ b/utilcode/lib/src/main/AndroidManifest.xml
@@ -1,7 +1,10 @@
+
+
+
+ android:permission="com.blankj.utilcode.util.bus">
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..882a013f49 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
@@ -51,6 +51,7 @@ public static Activity getActivityByView(@NonNull View view) {
* @return the activity by context.
*/
public static Activity getActivityByContext(@NonNull Context context) {
+ if (context instanceof Activity) return (Activity) context;
while (context instanceof ContextWrapper) {
if (context instanceof Activity) {
return (Activity) context;
@@ -1086,6 +1087,16 @@ public static Activity getTopActivity() {
return Utils.getActivityLifecycle().getTopActivity();
}
+ /**
+ * Return whether the activity is alive.
+ *
+ * @param context The context.
+ * @return {@code true}: yes
{@code false}: no
+ */
+ public static boolean isActivityAlive(final Context context) {
+ return isActivityAlive(getActivityByContext(context));
+ }
+
/**
* Return whether the activity is alive.
*
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
index b2437aabb0..c034037720 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
@@ -14,7 +14,7 @@ public final class AdaptScreenUtils {
private static List sMetricsFields;
/**
- * Adapt for the horizontal screen, and call it in [android.app.Activity.getResources].
+ * Adapt for the horizontal screen, and call it in {@link android.app.Activity#getResources()}.
*/
public static Resources adaptWidth(final Resources resources, final int designWidth) {
float newXdpi = (resources.getDisplayMetrics().widthPixels * 72f) / designWidth;
@@ -23,18 +23,18 @@ public static Resources adaptWidth(final Resources resources, final int designWi
}
/**
- * Adapt for the vertical screen, and call it in [android.app.Activity.getResources].
+ * Adapt for the vertical screen, and call it in {@link android.app.Activity#getResources()}.
*/
public static Resources adaptHeight(final Resources resources, final int designHeight) {
return adaptHeight(resources, designHeight, false);
}
/**
- * Adapt for the vertical screen, and call it in [android.app.Activity.getResources].
+ * Adapt for the vertical screen, and call it in {@link android.app.Activity#getResources()}.
*/
public static Resources adaptHeight(final Resources resources, final int designHeight, final boolean includeNavBar) {
- float screenHeight = resources.getDisplayMetrics().heightPixels * 72f
- + (includeNavBar ? getNavBarHeight(resources) : 0);
+ float screenHeight = (resources.getDisplayMetrics().heightPixels
+ + (includeNavBar ? getNavBarHeight(resources) : 0)) * 72f;
float newXdpi = screenHeight / designHeight;
applyDisplayMetrics(resources, newXdpi);
return resources;
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
deleted file mode 100644
index 7e87e73474..0000000000
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package com.blankj.utilcode.util;
-
-import android.support.annotation.IntRange;
-import android.support.annotation.NonNull;
-import android.view.View;
-
-/**
- *
- * author: blankj
- * blog : http://blankj.com
- * time : 2018/12/29
- * desc : utils about anti shake
- *
- */
-public final class AntiShakeUtils {
-
- private static final long DEFAULT_DURATION = 200;
- private static final int TAG_KEY = 0x7EFFFFFF;
-
- private AntiShakeUtils() {
- throw new UnsupportedOperationException("u can't instantiate me...");
- }
-
- public static boolean isValid(@NonNull View view) {
- return isValid(view, DEFAULT_DURATION);
- }
-
- public static boolean isValid(@NonNull View view, @IntRange(from = 0) long duration) {
- long curTime = System.currentTimeMillis();
- Object tag = view.getTag(TAG_KEY);
- if (!(tag instanceof Long)) {
- view.setTag(TAG_KEY, curTime);
- return true;
- }
- long preTime = (Long) tag;
- if (curTime - preTime <= duration) return false;
- view.setTag(TAG_KEY, curTime);
- return true;
- }
-}
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ClickUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ClickUtils.java
new file mode 100644
index 0000000000..b0d6ea8535
--- /dev/null
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ClickUtils.java
@@ -0,0 +1,193 @@
+package com.blankj.utilcode.util;
+
+import android.support.annotation.IntRange;
+import android.support.annotation.NonNull;
+import android.view.MotionEvent;
+import android.view.View;
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2019/06/12
+ * desc : utils about click
+ *
+ */
+public class ClickUtils {
+
+ private static final int SCALE = -1;
+ private static final float SCALE_DEFAULT_FACTOR = -0.08f;
+ private static final long DEBOUNCING_DEFAULT_DURATION = 200;
+
+ public static void applyScale(final View... views) {
+ applyScale(views, null);
+ }
+
+ public static void applyScale(final View[] views, final float[] scaleFactors) {
+ if (views == null || views.length == 0) return;
+ for (int i = 0; i < views.length; i++) {
+ if (views[i] == null) continue;
+ if (scaleFactors == null || i >= scaleFactors.length) {
+ views[i].setTag(SCALE, SCALE_DEFAULT_FACTOR);
+ } else {
+ views[i].setTag(SCALE, scaleFactors[i]);
+ }
+ views[i].setClickable(true);
+ views[i].setOnTouchListener(OnUtilsTouchListener.getInstance());
+ }
+ }
+
+ public static void applySingleDebouncing(final View view, final View.OnClickListener listener) {
+ applySingleDebouncing(new View[]{view}, listener);
+ }
+
+ public static void applySingleDebouncing(final View view, @IntRange(from = 0) long duration,
+ final View.OnClickListener listener) {
+ applySingleDebouncing(new View[]{view}, duration, listener);
+ }
+
+ public static void applySingleDebouncing(final View[] views, final View.OnClickListener listener) {
+ applySingleDebouncing(views, DEBOUNCING_DEFAULT_DURATION, listener);
+ }
+
+ public static void applySingleDebouncing(final View[] views,
+ @IntRange(from = 0) long duration,
+ final View.OnClickListener listener) {
+ applyDebouncing(views, false, duration, listener);
+ }
+
+ public static void applyGlobalDebouncing(final View view, final View.OnClickListener listener) {
+ applyGlobalDebouncing(new View[]{view}, listener);
+ }
+
+ public static void applyGlobalDebouncing(final View view, @IntRange(from = 0) long duration,
+ final View.OnClickListener listener) {
+ applyGlobalDebouncing(new View[]{view}, duration, listener);
+ }
+
+ public static void applyGlobalDebouncing(final View[] views, final View.OnClickListener listener) {
+ applyGlobalDebouncing(views, DEBOUNCING_DEFAULT_DURATION, listener);
+ }
+
+ public static void applyGlobalDebouncing(final View[] views,
+ @IntRange(from = 0) long duration,
+ final View.OnClickListener listener) {
+ applyDebouncing(views, true, duration, listener);
+ }
+
+ private static void applyDebouncing(final View[] views,
+ final boolean isGlobal,
+ @IntRange(from = 0) long duration,
+ final View.OnClickListener listener) {
+ if (views == null || views.length == 0 || listener == null) return;
+ for (View view : views) {
+ if (view == null) continue;
+ view.setOnClickListener(new OnDebouncingClickListener(isGlobal, duration) {
+ @Override
+ public void onDebouncingClick(View v) {
+ listener.onClick(v);
+ }
+ });
+ }
+ }
+
+ private static class OnUtilsTouchListener implements View.OnTouchListener {
+
+ public static OnUtilsTouchListener getInstance() {
+ return LazyHolder.INSTANCE;
+ }
+
+ private OnUtilsTouchListener() {/**/}
+
+ @Override
+ public boolean onTouch(final View v, MotionEvent event) {
+ int action = event.getAction();
+ if (action == MotionEvent.ACTION_DOWN) {
+ processScale(v, true);
+ } else if (action == MotionEvent.ACTION_UP
+ || action == MotionEvent.ACTION_CANCEL) {
+ processScale(v, false);
+ }
+ return false;
+ }
+
+ private void processScale(final View view, boolean isDown) {
+ Object tag = view.getTag(SCALE);
+ if (!(tag instanceof Float)) return;
+ float value = isDown ? 1 + (Float) tag : 1;
+ view.animate()
+ .scaleX(value)
+ .scaleY(value)
+ .setDuration(100)
+ .start();
+ }
+ }
+
+ public static abstract class OnDebouncingClickListener implements View.OnClickListener {
+
+ private static final int TAG_KEY = 0x7EFFFFFF;
+
+ private static boolean mEnabled = true;
+
+ private static final Runnable ENABLE_AGAIN = new Runnable() {
+ @Override
+ public void run() {
+ mEnabled = true;
+ }
+ };
+
+ private static boolean isValid(@NonNull final View view, final long duration) {
+ long curTime = System.currentTimeMillis();
+ Object tag = view.getTag(TAG_KEY);
+ if (!(tag instanceof Long)) {
+ view.setTag(TAG_KEY, curTime);
+ return true;
+ }
+ long preTime = (Long) tag;
+ if (curTime - preTime <= duration) return false;
+ view.setTag(TAG_KEY, curTime);
+ return true;
+ }
+
+ private long mDuration;
+ private boolean mIsGlobal;
+
+ public OnDebouncingClickListener() {
+ this(true, DEBOUNCING_DEFAULT_DURATION);
+ }
+
+ public OnDebouncingClickListener(final boolean isGlobal) {
+ this(isGlobal, DEBOUNCING_DEFAULT_DURATION);
+ }
+
+ public OnDebouncingClickListener(final long duration) {
+ this(true, duration);
+ }
+
+ public OnDebouncingClickListener(final boolean isGlobal, final long duration) {
+ mIsGlobal = isGlobal;
+ mDuration = duration;
+ }
+
+ @Override
+ public final void onClick(View v) {
+ if (mIsGlobal) {
+ if (mEnabled) {
+ mEnabled = false;
+ v.postDelayed(ENABLE_AGAIN, mDuration);
+ onDebouncingClick(v);
+ }
+ } else {
+ if (isValid(v, mDuration)) {
+ onDebouncingClick(v);
+ }
+ }
+ }
+
+ public abstract void onDebouncingClick(View v);
+ }
+
+ private static class LazyHolder {
+ private static final OnUtilsTouchListener INSTANCE = new OnUtilsTouchListener();
+ }
+}
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..53ea8997c3 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
@@ -34,26 +34,12 @@ private KeyboardUtils() {
/**
* Show the soft input.
- *
- * @param activity The activity.
- */
- public static void showSoftInput(final Activity activity) {
- showSoftInput(activity, InputMethodManager.SHOW_FORCED);
- }
-
- /**
- * Show the soft input.
- *
- * @param activity The activity.
- * @param flags Provides additional operating flags. Currently may be
- * 0 or have the {@link InputMethodManager#SHOW_IMPLICIT} bit set.
*/
- public static void showSoftInput(final Activity activity, final int flags) {
- View view = activity.getCurrentFocus();
- if (view == null) {
- view = new View(activity);
- }
- showSoftInput(view, flags);
+ public static void showSoftInput() {
+ InputMethodManager imm =
+ (InputMethodManager) Utils.getApp().getSystemService(Context.INPUT_METHOD_SERVICE);
+ if (imm == null) return;
+ imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
}
/**
@@ -76,9 +62,6 @@ public static void showSoftInput(final View view, final int flags) {
InputMethodManager imm =
(InputMethodManager) Utils.getApp().getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm == null) return;
- // clear the focus of view
- view.clearFocus();
-
view.setFocusable(true);
view.setFocusableInTouchMode(true);
view.requestFocus();
@@ -91,6 +74,7 @@ protected void onReceiveResult(int resultCode, Bundle resultData) {
}
}
});
+ imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
}
/**
@@ -132,7 +116,7 @@ protected void onReceiveResult(int resultCode, Bundle resultData) {
public static void toggleSoftInput() {
InputMethodManager imm =
(InputMethodManager) Utils.getApp().getSystemService(Context.INPUT_METHOD_SERVICE);
- //noinspection ConstantConditions
+ if (imm == null) return;
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
}
@@ -290,7 +274,7 @@ public static void fixSoftInputLeaks(@NonNull final Window window) {
if (view.getRootView() == window.getDecorView().getRootView()) {
leakViewField.set(imm, null);
}
- } catch (Throwable ignore) { /**/ }
+ } catch (Throwable ignore) {/**/}
}
}
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PathUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PathUtils.java
index 89761f0d88..27d124b135 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/PathUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/PathUtils.java
@@ -113,7 +113,7 @@ public static String getInternalAppFilesPath() {
* @return the path of /data/data/package/shared_prefs
*/
public static String getInternalAppSpPath() {
- return Utils.getApp().getApplicationInfo().dataDir + "shared_prefs";
+ return Utils.getApp().getApplicationInfo().dataDir + "/shared_prefs";
}
/**
@@ -123,7 +123,7 @@ public static String getInternalAppSpPath() {
*/
public static String getInternalAppNoBackupFilesPath() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
- return Utils.getApp().getApplicationInfo().dataDir + "no_backup";
+ return Utils.getApp().getApplicationInfo().dataDir + "/no_backup";
}
return getAbsolutePath(Utils.getApp().getNoBackupFilesDir());
}
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/RomUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/RomUtils.java
index 3aaf7993dd..90f2255cf1 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/RomUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/RomUtils.java
@@ -348,7 +348,7 @@ private static String getManufacturer() {
if (!TextUtils.isEmpty(manufacturer)) {
return manufacturer.toLowerCase();
}
- } catch (Throwable ignore) { /**/ }
+ } catch (Throwable ignore) {/**/}
return UNKNOWN;
}
@@ -358,7 +358,7 @@ private static String getBrand() {
if (!TextUtils.isEmpty(brand)) {
return brand.toLowerCase();
}
- } catch (Throwable ignore) { /**/ }
+ } catch (Throwable ignore) {/**/}
return UNKNOWN;
}
@@ -373,7 +373,7 @@ private static String getRomVersion(final String propertyName) {
if (!TextUtils.isEmpty(display)) {
ret = display.toLowerCase();
}
- } catch (Throwable ignore) { /**/ }
+ } catch (Throwable ignore) {/**/}
}
if (TextUtils.isEmpty(ret)) {
return UNKNOWN;
@@ -407,7 +407,7 @@ private static String getSystemPropertyByShell(final String propName) {
if (input != null) {
try {
input.close();
- } catch (IOException ignore) { /**/ }
+ } catch (IOException ignore) {/**/}
}
}
return "";
@@ -421,7 +421,7 @@ private static String getSystemPropertyByStream(final String key) {
);
prop.load(is);
return prop.getProperty(key, "");
- } catch (Exception ignore) { /**/ }
+ } catch (Exception ignore) {/**/}
return "";
}
@@ -431,7 +431,7 @@ private static String getSystemPropertyByReflect(String key) {
Class> clz = Class.forName("android.os.SystemProperties");
Method getMethod = clz.getMethod("get", String.class, String.class);
return (String) getMethod.invoke(clz, key, "");
- } catch (Exception e) { /**/ }
+ } catch (Exception e) {/**/}
return "";
}
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..3ea351158a 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
@@ -778,6 +778,10 @@ private void apply(final int type) {
mType = type;
}
+ public SpannableStringBuilder get() {
+ return mBuilder;
+ }
+
/**
* Create the span string.
*
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..fe7b7ff28a 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
@@ -387,7 +387,7 @@ static class SystemToast extends AbsToast {
mTNmHandlerField.setAccessible(true);
Handler tnHandler = (Handler) mTNmHandlerField.get(mTN);
mTNmHandlerField.set(mTN, new SafeHandler(tnHandler));
- } catch (Exception ignored) { /**/ }
+ } catch (Exception ignored) {/**/}
}
}
@@ -496,7 +496,7 @@ public void show() {
if (mWM != null) {
mWM.addView(mView, mParams);
}
- } catch (Exception ignored) { /**/ }
+ } catch (Exception ignored) {/**/}
Utils.runOnUiThreadDelayed(new Runnable() {
@Override
@@ -512,7 +512,7 @@ public void cancel() {
if (mWM != null) {
mWM.removeViewImmediate(mView);
}
- } catch (Exception ignored) { /**/ }
+ } catch (Exception ignored) {/**/}
mView = null;
mWM = null;
mToast = null;
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..060d2ac92e 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
@@ -10,6 +10,7 @@
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;
@@ -63,7 +64,8 @@ public static File uri2File(@NonNull final Uri uri) {
if (path != null) return new File(path);
Log.d("UriUtils", uri.toString() + " parse failed. -> 0");
return null;
- } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT
+ }// end 0
+ else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT
&& DocumentsContract.isDocumentUri(Utils.getApp(), uri)) {
if ("com.android.externalstorage.documents".equals(authority)) {
final String docId = DocumentsContract.getDocumentId(uri);
@@ -72,16 +74,29 @@ public static File uri2File(@NonNull final Uri uri) {
if ("primary".equalsIgnoreCase(type)) {
return new File(Environment.getExternalStorageDirectory() + "/" + split[1]);
}
- Log.d("UriUtils", uri.toString() + " parse failed. -> 1");
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 1_0");
return null;
- } else if ("com.android.providers.downloads.documents".equals(authority)) {
+ }// end 1_0
+ 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);
- } else if ("com.android.providers.media.documents".equals(authority)) {
+ if (!TextUtils.isEmpty(id)) {
+ if (id.startsWith("raw:")) {
+ return new File(id.substring(4));
+ }
+ try {
+ final Uri contentUri = ContentUris.withAppendedId(
+ Uri.parse("content://downloads/public_downloads"),
+ Long.valueOf(id)
+ );
+ return getFileFromUri(contentUri, "1_1");
+ } catch (NumberFormatException e) {
+ e.printStackTrace();
+ }
+ }
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 1_1");
+ return null;
+ }// end 1_1
+ else if ("com.android.providers.media.documents".equals(authority)) {
final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":");
final String type = split[0];
@@ -93,34 +108,38 @@ public static File uri2File(@NonNull final Uri uri) {
} else if ("audio".equals(type)) {
contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
} else {
- Log.d("UriUtils", uri.toString() + " parse failed. -> 3");
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 1_2");
return null;
}
final String selection = "_id=?";
final String[] selectionArgs = new String[]{split[1]};
- return getFileFromUri(contentUri, selection, selectionArgs, 4);
- } else if (ContentResolver.SCHEME_CONTENT.equals(scheme)) {
- return getFileFromUri(uri, 5);
- } else {
- Log.d("UriUtils", uri.toString() + " parse failed. -> 6");
+ return getFileFromUri(contentUri, selection, selectionArgs, "1_2");
+ }// end 1_2
+ else if (ContentResolver.SCHEME_CONTENT.equals(scheme)) {
+ return getFileFromUri(uri, "1_3");
+ }// end 1_3
+ else {
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 1_4");
return null;
- }
- } else if (ContentResolver.SCHEME_CONTENT.equals(scheme)) {
- return getFileFromUri(uri, 7);
- } else {
- Log.d("UriUtils", uri.toString() + " parse failed. -> 8");
+ }// end 1_4
+ }// end 1
+ else if (ContentResolver.SCHEME_CONTENT.equals(scheme)) {
+ return getFileFromUri(uri, "2");
+ }// end 2
+ else {
+ Log.d("UriUtils", uri.toString() + " parse failed. -> 3");
return null;
- }
+ }// end 3
}
- private static File getFileFromUri(final Uri uri, final int code) {
+ private static File getFileFromUri(final Uri uri, final String code) {
return getFileFromUri(uri, null, null, code);
}
private static File getFileFromUri(final Uri uri,
final String selection,
final String[] selectionArgs,
- final int code) {
+ final String code) {
final Cursor cursor = Utils.getApp().getContentResolver().query(
uri, new String[]{"_data"}, selection, selectionArgs, null);
if (cursor == null) {
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..1972e95332 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
@@ -496,7 +496,7 @@ private static void fixSoftInputLeaks(final Activity activity) {
if (view.getRootView() == activity.getWindow().getDecorView().getRootView()) {
leakViewField.set(imm, null);
}
- } catch (Throwable ignore) { /**/ }
+ } catch (Throwable ignore) {/**/}
}
}
}
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java
new file mode 100644
index 0000000000..16b573fab0
--- /dev/null
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java
@@ -0,0 +1,36 @@
+package com.blankj.utilcode.util;
+
+import android.view.View;
+import android.view.ViewGroup;
+
+/**
+ *
+ * author: blankj
+ * blog : http://blankj.com
+ * time : 2019/06/18
+ * desc : utils about view
+ *
+ */
+public class ViewUtils {
+
+ public static void setViewEnabled(View view, boolean enabled) {
+ setViewEnabled(view, enabled, (View) null);
+ }
+
+ public static void setViewEnabled(View view, boolean enabled, View... excludes) {
+ if (view == null) return;
+ if (view instanceof ViewGroup) {
+ ViewGroup viewGroup = (ViewGroup) view;
+ int childCount = viewGroup.getChildCount();
+ for (int i = 0; i < childCount; i++) {
+ setViewEnabled(viewGroup.getChildAt(i), enabled, excludes);
+ }
+ }
+ if (excludes != null) {
+ for (View exclude : excludes) {
+ if (view == exclude) return;
+ }
+ }
+ view.setEnabled(enabled);
+ }
+}
\ No newline at end of file
diff --git a/utilcode/lib/src/test/java/com/blankj/utilcode/util/GsonUtilsTest.java b/utilcode/lib/src/test/java/com/blankj/utilcode/util/GsonUtilsTest.java
index c52b0e8efa..bd521f5ac4 100644
--- a/utilcode/lib/src/test/java/com/blankj/utilcode/util/GsonUtilsTest.java
+++ b/utilcode/lib/src/test/java/com/blankj/utilcode/util/GsonUtilsTest.java
@@ -17,6 +17,500 @@
*/
public class GsonUtilsTest extends BaseTest {
+ /**
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ * "C
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ */
+
+ private ALBean AL;
+ private DZBean DZ;
+ private AFBean AF;
+ private ARBean AR;
+ private AEBean AE;
+ private AWBean AW;
+ private OMBean OM;
+ private AZBean AZ;
+ private ACBean AC;
+ private EGBean EG;
+ private ETBean ET;
+ private IEBean IE;
+ private EEBean EE;
+ private ADBean AD;
+ private AOBean AO;
+ private AIBean AI;
+ private AGBean AG;
+ private ATBean AT;
+ private AXBean AX;
+ private AUBean AU;
+ private BBBean BB;
+ private PGBean PG;
+ private BSBean BS;
+ private PKBean PK;
+ private PYBean PY;
+ private PSBean PS;
+ private BHBean BH;
+ private PABean PA;
+ private BRBean BR;
+ private BYBean BY;
+ private BMBean BM;
+ private BGBean BG;
+ private MPBean MP;
+ private BJBean BJ;
+ private BEBean BE;
+ private ISBean IS;
+ private PRBean PR;
+ private PLBean PL;
+ private BABean BA;
+ private BOBean BO;
+ private BZBean BZ;
+ private BWBean BW;
+ private BTBean BT;
+ private BFBean BF;
+ private BIBean BI;
+ private KPBean KP;
+ private GQBean GQ;
+ private DKBean DK;
+ private DEBean DE;
+ private TLBean TL;
+ private TGBean TG;
+ private DOBean DO;
+ private DMBean DM;
+ private RUBean RU;
+ private ECBean EC;
+ private ERBean ER;
+ private FRBean FR;
+ private FOBean FO;
+ private PFBean PF;
+ private GFBean GF;
+ private VABean VA;
+ private PHBean PH;
+ private FJBean FJ;
+ private FIBean FI;
+ private CVBean CV;
+ private FKBean FK;
+ private GMBean GM;
+ private CGBean CG;
+ private CDBean CD;
+ private COBean CO;
+ private CRBean CR;
+ private GGBean GG;
+ private GDBean GD;
+ private GLBean GL;
+ private GEBean GE;
+ private CUBean CU;
+ private GPBean GP;
+ private GUBean GU;
+ private GYBean GY;
+ private KZBean KZ;
+ private HTBean HT;
+ private KRBean KR;
+ private NLBean NL;
+ private BQBean BQ;
+ private SXBean SX;
+ private MEBean ME;
+ private HNBean HN;
+ private KIBean KI;
+ private DJBean DJ;
+ private KGBean KG;
+ private GNBean GN;
+ private GWBean GW;
+ private CABean CA;
+ private GHBean GH;
+ private GABean GA;
+ private KHBean KH;
+ private CZBean CZ;
+ private ZWBean ZW;
+ private CMBean CM;
+ private QABean QA;
+ private KYBean KY;
+ private CCBean CC;
+ private KMBean KM;
+ private XKBean XK;
+ private CIBean CI;
+ private KWBean KW;
+ private HRBean HR;
+ private KEBean KE;
+ private CKBean CK;
+ private CWBean CW;
+ private LVBean LV;
+ private LSBean LS;
+ private LABean LA;
+ private LBBean LB;
+ private LTBean LT;
+ private LRBean LR;
+ private LYBean LY;
+ private LIBean LI;
+ private REBean RE;
+ private LUBean LU;
+ private RWBean RW;
+ private ROBean RO;
+ private MGBean MG;
+ private IMBean IM;
+ private MVBean MV;
+ private MTBean MT;
+ private MWBean MW;
+ private MYBean MY;
+ private MLBean ML;
+ private MKBean MK;
+ private MHBean MH;
+ private MQBean MQ;
+ private YTBean YT;
+ private MUBean MU;
+ private MRBean MR;
+ private USBean US;
+ private ASBean AS;
+ private VIBean VI;
+ private MNBean MN;
+ private MSBean MS;
+ private BDBean BD;
+ private PEBean PE;
+ private FMBean FM;
+ private MMBean MM;
+ private MDBean MD;
+ private MABean MA;
+ private MCBean MC;
+ private MZBean MZ;
+ private MXBean MX;
+ private NABean NA;
+ private ZABean ZA;
+ private SSBean SS;
+ private NRBean NR;
+ private NIBean NI;
+ private NPBean NP;
+ private NEBean NE;
+ private NGBean NG;
+ private NUBean NU;
+ private NOBean NO;
+ private NFBean NF;
+ private PWBean PW;
+ private PTBean PT;
+ private JPBean JP;
+ private SEBean SE;
+ private CHBean CH;
+ private SVBean SV;
+ private WSBean WS;
+ private RSBean RS;
+ private SLBean SL;
+ private SNBean SN;
+ private CYBean CY;
+ private SCBean SC;
+ private SABean SA;
+ private BLBean BL;
+ private CXBean CX;
+ private STBean ST;
+ private SHBean SH;
+ private KNBean KN;
+ private LCBean LC;
+ private MFBean MF;
+ private SMBean SM;
+ private PMBean PM;
+ private VCBean VC;
+ private LKBean LK;
+ private SKBean SK;
+ private SIBean SI;
+ private SJBean SJ;
+ private SZBean SZ;
+ private SDBean SD;
+ private SRBean SR;
+ private SBBean SB;
+ private SOBean SO;
+ private TJBean TJ;
+ private THBean TH;
+ private TZBean TZ;
+ private TOBean TO;
+ private TCBean TC;
+ private TABean TA;
+ private TTBean TT;
+ private TNBean TN;
+ private TVBean TV;
+ private TRBean TR;
+ private TMBean TM;
+ private TKBean TK;
+ private WFBean WF;
+ private VUBean VU;
+ private GTBean GT;
+ private VEBean VE;
+ private BNBean BN;
+ private UGBean UG;
+ private UABean UA;
+ private UYBean UY;
+ private UZBean UZ;
+ private GRBean GR;
+ private ESBean ES;
+ private EHBean EH;
+ private SGBean SG;
+ private NCBean NC;
+ private NZBean NZ;
+ private HUBean HU;
+ private SYBean SY;
+ private JMBean JM;
+ private AMBean AM;
+ private YEBean YE;
+ private IQBean IQ;
+ private IRBean IR;
+ private ILBean IL;
+ private ITBean IT;
+ private INBean IN;
+ private IDBean ID;
+ private GBBean GB;
+ private VGBean VG;
+ private IOBean IO;
+ private JOBean JO;
+ private VNBean VN;
+ private ZMBean ZM;
+ private JEBean JE;
+ private TDBean TD;
+ private GIBean GI;
+ private CLBean CL;
+ private CFBean CF;
+ private CNBean CN;
+ private MOBean MO;
+ private TWBean TW;
+ private HKBean HK;
+
@Test
public void getGson() {
Assert.assertNotNull(GsonUtils.getGson());
@@ -78,26 +572,18157 @@ public void getType() {
);
}
- static class Result {
- int code;
- String message;
- T data;
+ public ALBean getAL() {
+ return AL;
+ }
- Result(T data) {
- this.code = 200;
- this.message = "success";
- this.data = data;
- }
+ public void setAL(ALBean AL) {
+ this.AL = AL;
}
- static class Person {
+ public DZBean getDZ() {
+ return DZ;
+ }
- String name;
- int gender;
- String address;
+ public void setDZ(DZBean DZ) {
+ this.DZ = DZ;
+ }
- Person(String name) {
- this.name = name;
+ public AFBean getAF() {
+ return AF;
+ }
+
+ public void setAF(AFBean AF) {
+ this.AF = AF;
+ }
+
+ public ARBean getAR() {
+ return AR;
+ }
+
+ public void setAR(ARBean AR) {
+ this.AR = AR;
+ }
+
+ public AEBean getAE() {
+ return AE;
+ }
+
+ public void setAE(AEBean AE) {
+ this.AE = AE;
+ }
+
+ public AWBean getAW() {
+ return AW;
+ }
+
+ public void setAW(AWBean AW) {
+ this.AW = AW;
+ }
+
+ public OMBean getOM() {
+ return OM;
+ }
+
+ public void setOM(OMBean OM) {
+ this.OM = OM;
+ }
+
+ public AZBean getAZ() {
+ return AZ;
+ }
+
+ public void setAZ(AZBean AZ) {
+ this.AZ = AZ;
+ }
+
+ public ACBean getAC() {
+ return AC;
+ }
+
+ public void setAC(ACBean AC) {
+ this.AC = AC;
+ }
+
+ public EGBean getEG() {
+ return EG;
+ }
+
+ public void setEG(EGBean EG) {
+ this.EG = EG;
+ }
+
+ public ETBean getET() {
+ return ET;
+ }
+
+ public void setET(ETBean ET) {
+ this.ET = ET;
+ }
+
+ public IEBean getIE() {
+ return IE;
+ }
+
+ public void setIE(IEBean IE) {
+ this.IE = IE;
+ }
+
+ public EEBean getEE() {
+ return EE;
+ }
+
+ public void setEE(EEBean EE) {
+ this.EE = EE;
+ }
+
+ public ADBean getAD() {
+ return AD;
+ }
+
+ public void setAD(ADBean AD) {
+ this.AD = AD;
+ }
+
+ public AOBean getAO() {
+ return AO;
+ }
+
+ public void setAO(AOBean AO) {
+ this.AO = AO;
+ }
+
+ public AIBean getAI() {
+ return AI;
+ }
+
+ public void setAI(AIBean AI) {
+ this.AI = AI;
+ }
+
+ public AGBean getAG() {
+ return AG;
+ }
+
+ public void setAG(AGBean AG) {
+ this.AG = AG;
+ }
+
+ public ATBean getAT() {
+ return AT;
+ }
+
+ public void setAT(ATBean AT) {
+ this.AT = AT;
+ }
+
+ public AXBean getAX() {
+ return AX;
+ }
+
+ public void setAX(AXBean AX) {
+ this.AX = AX;
+ }
+
+ public AUBean getAU() {
+ return AU;
+ }
+
+ public void setAU(AUBean AU) {
+ this.AU = AU;
+ }
+
+ public BBBean getBB() {
+ return BB;
+ }
+
+ public void setBB(BBBean BB) {
+ this.BB = BB;
+ }
+
+ public PGBean getPG() {
+ return PG;
+ }
+
+ public void setPG(PGBean PG) {
+ this.PG = PG;
+ }
+
+ public BSBean getBS() {
+ return BS;
+ }
+
+ public void setBS(BSBean BS) {
+ this.BS = BS;
+ }
+
+ public PKBean getPK() {
+ return PK;
+ }
+
+ public void setPK(PKBean PK) {
+ this.PK = PK;
+ }
+
+ public PYBean getPY() {
+ return PY;
+ }
+
+ public void setPY(PYBean PY) {
+ this.PY = PY;
+ }
+
+ public PSBean getPS() {
+ return PS;
+ }
+
+ public void setPS(PSBean PS) {
+ this.PS = PS;
+ }
+
+ public BHBean getBH() {
+ return BH;
+ }
+
+ public void setBH(BHBean BH) {
+ this.BH = BH;
+ }
+
+ public PABean getPA() {
+ return PA;
+ }
+
+ public void setPA(PABean PA) {
+ this.PA = PA;
+ }
+
+ public BRBean getBR() {
+ return BR;
+ }
+
+ public void setBR(BRBean BR) {
+ this.BR = BR;
+ }
+
+ public BYBean getBY() {
+ return BY;
+ }
+
+ public void setBY(BYBean BY) {
+ this.BY = BY;
+ }
+
+ public BMBean getBM() {
+ return BM;
+ }
+
+ public void setBM(BMBean BM) {
+ this.BM = BM;
+ }
+
+ public BGBean getBG() {
+ return BG;
+ }
+
+ public void setBG(BGBean BG) {
+ this.BG = BG;
+ }
+
+ public MPBean getMP() {
+ return MP;
+ }
+
+ public void setMP(MPBean MP) {
+ this.MP = MP;
+ }
+
+ public BJBean getBJ() {
+ return BJ;
+ }
+
+ public void setBJ(BJBean BJ) {
+ this.BJ = BJ;
+ }
+
+ public BEBean getBE() {
+ return BE;
+ }
+
+ public void setBE(BEBean BE) {
+ this.BE = BE;
+ }
+
+ public ISBean getIS() {
+ return IS;
+ }
+
+ public void setIS(ISBean IS) {
+ this.IS = IS;
+ }
+
+ public PRBean getPR() {
+ return PR;
+ }
+
+ public void setPR(PRBean PR) {
+ this.PR = PR;
+ }
+
+ public PLBean getPL() {
+ return PL;
+ }
+
+ public void setPL(PLBean PL) {
+ this.PL = PL;
+ }
+
+ public BABean getBA() {
+ return BA;
+ }
+
+ public void setBA(BABean BA) {
+ this.BA = BA;
+ }
+
+ public BOBean getBO() {
+ return BO;
+ }
+
+ public void setBO(BOBean BO) {
+ this.BO = BO;
+ }
+
+ public BZBean getBZ() {
+ return BZ;
+ }
+
+ public void setBZ(BZBean BZ) {
+ this.BZ = BZ;
+ }
+
+ public BWBean getBW() {
+ return BW;
+ }
+
+ public void setBW(BWBean BW) {
+ this.BW = BW;
+ }
+
+ public BTBean getBT() {
+ return BT;
+ }
+
+ public void setBT(BTBean BT) {
+ this.BT = BT;
+ }
+
+ public BFBean getBF() {
+ return BF;
+ }
+
+ public void setBF(BFBean BF) {
+ this.BF = BF;
+ }
+
+ public BIBean getBI() {
+ return BI;
+ }
+
+ public void setBI(BIBean BI) {
+ this.BI = BI;
+ }
+
+ public KPBean getKP() {
+ return KP;
+ }
+
+ public void setKP(KPBean KP) {
+ this.KP = KP;
+ }
+
+ public GQBean getGQ() {
+ return GQ;
+ }
+
+ public void setGQ(GQBean GQ) {
+ this.GQ = GQ;
+ }
+
+ public DKBean getDK() {
+ return DK;
+ }
+
+ public void setDK(DKBean DK) {
+ this.DK = DK;
+ }
+
+ public DEBean getDE() {
+ return DE;
+ }
+
+ public void setDE(DEBean DE) {
+ this.DE = DE;
+ }
+
+ public TLBean getTL() {
+ return TL;
+ }
+
+ public void setTL(TLBean TL) {
+ this.TL = TL;
+ }
+
+ public TGBean getTG() {
+ return TG;
+ }
+
+ public void setTG(TGBean TG) {
+ this.TG = TG;
+ }
+
+ public DOBean getDO() {
+ return DO;
+ }
+
+ public void setDO(DOBean DO) {
+ this.DO = DO;
+ }
+
+ public DMBean getDM() {
+ return DM;
+ }
+
+ public void setDM(DMBean DM) {
+ this.DM = DM;
+ }
+
+ public RUBean getRU() {
+ return RU;
+ }
+
+ public void setRU(RUBean RU) {
+ this.RU = RU;
+ }
+
+ public ECBean getEC() {
+ return EC;
+ }
+
+ public void setEC(ECBean EC) {
+ this.EC = EC;
+ }
+
+ public ERBean getER() {
+ return ER;
+ }
+
+ public void setER(ERBean ER) {
+ this.ER = ER;
+ }
+
+ public FRBean getFR() {
+ return FR;
+ }
+
+ public void setFR(FRBean FR) {
+ this.FR = FR;
+ }
+
+ public FOBean getFO() {
+ return FO;
+ }
+
+ public void setFO(FOBean FO) {
+ this.FO = FO;
+ }
+
+ public PFBean getPF() {
+ return PF;
+ }
+
+ public void setPF(PFBean PF) {
+ this.PF = PF;
+ }
+
+ public GFBean getGF() {
+ return GF;
+ }
+
+ public void setGF(GFBean GF) {
+ this.GF = GF;
+ }
+
+ public VABean getVA() {
+ return VA;
+ }
+
+ public void setVA(VABean VA) {
+ this.VA = VA;
+ }
+
+ public PHBean getPH() {
+ return PH;
+ }
+
+ public void setPH(PHBean PH) {
+ this.PH = PH;
+ }
+
+ public FJBean getFJ() {
+ return FJ;
+ }
+
+ public void setFJ(FJBean FJ) {
+ this.FJ = FJ;
+ }
+
+ public FIBean getFI() {
+ return FI;
+ }
+
+ public void setFI(FIBean FI) {
+ this.FI = FI;
+ }
+
+ public CVBean getCV() {
+ return CV;
+ }
+
+ public void setCV(CVBean CV) {
+ this.CV = CV;
+ }
+
+ public FKBean getFK() {
+ return FK;
+ }
+
+ public void setFK(FKBean FK) {
+ this.FK = FK;
+ }
+
+ public GMBean getGM() {
+ return GM;
+ }
+
+ public void setGM(GMBean GM) {
+ this.GM = GM;
+ }
+
+ public CGBean getCG() {
+ return CG;
+ }
+
+ public void setCG(CGBean CG) {
+ this.CG = CG;
+ }
+
+ public CDBean getCD() {
+ return CD;
+ }
+
+ public void setCD(CDBean CD) {
+ this.CD = CD;
+ }
+
+ public COBean getCO() {
+ return CO;
+ }
+
+ public void setCO(COBean CO) {
+ this.CO = CO;
+ }
+
+ public CRBean getCR() {
+ return CR;
+ }
+
+ public void setCR(CRBean CR) {
+ this.CR = CR;
+ }
+
+ public GGBean getGG() {
+ return GG;
+ }
+
+ public void setGG(GGBean GG) {
+ this.GG = GG;
+ }
+
+ public GDBean getGD() {
+ return GD;
+ }
+
+ public void setGD(GDBean GD) {
+ this.GD = GD;
+ }
+
+ public GLBean getGL() {
+ return GL;
+ }
+
+ public void setGL(GLBean GL) {
+ this.GL = GL;
+ }
+
+ public GEBean getGE() {
+ return GE;
+ }
+
+ public void setGE(GEBean GE) {
+ this.GE = GE;
+ }
+
+ public CUBean getCU() {
+ return CU;
+ }
+
+ public void setCU(CUBean CU) {
+ this.CU = CU;
+ }
+
+ public GPBean getGP() {
+ return GP;
+ }
+
+ public void setGP(GPBean GP) {
+ this.GP = GP;
+ }
+
+ public GUBean getGU() {
+ return GU;
+ }
+
+ public void setGU(GUBean GU) {
+ this.GU = GU;
+ }
+
+ public GYBean getGY() {
+ return GY;
+ }
+
+ public void setGY(GYBean GY) {
+ this.GY = GY;
+ }
+
+ public KZBean getKZ() {
+ return KZ;
+ }
+
+ public void setKZ(KZBean KZ) {
+ this.KZ = KZ;
+ }
+
+ public HTBean getHT() {
+ return HT;
+ }
+
+ public void setHT(HTBean HT) {
+ this.HT = HT;
+ }
+
+ public KRBean getKR() {
+ return KR;
+ }
+
+ public void setKR(KRBean KR) {
+ this.KR = KR;
+ }
+
+ public NLBean getNL() {
+ return NL;
+ }
+
+ public void setNL(NLBean NL) {
+ this.NL = NL;
+ }
+
+ public BQBean getBQ() {
+ return BQ;
+ }
+
+ public void setBQ(BQBean BQ) {
+ this.BQ = BQ;
+ }
+
+ public SXBean getSX() {
+ return SX;
+ }
+
+ public void setSX(SXBean SX) {
+ this.SX = SX;
+ }
+
+ public MEBean getME() {
+ return ME;
+ }
+
+ public void setME(MEBean ME) {
+ this.ME = ME;
+ }
+
+ public HNBean getHN() {
+ return HN;
+ }
+
+ public void setHN(HNBean HN) {
+ this.HN = HN;
+ }
+
+ public KIBean getKI() {
+ return KI;
+ }
+
+ public void setKI(KIBean KI) {
+ this.KI = KI;
+ }
+
+ public DJBean getDJ() {
+ return DJ;
+ }
+
+ public void setDJ(DJBean DJ) {
+ this.DJ = DJ;
+ }
+
+ public KGBean getKG() {
+ return KG;
+ }
+
+ public void setKG(KGBean KG) {
+ this.KG = KG;
+ }
+
+ public GNBean getGN() {
+ return GN;
+ }
+
+ public void setGN(GNBean GN) {
+ this.GN = GN;
+ }
+
+ public GWBean getGW() {
+ return GW;
+ }
+
+ public void setGW(GWBean GW) {
+ this.GW = GW;
+ }
+
+ public CABean getCA() {
+ return CA;
+ }
+
+ public void setCA(CABean CA) {
+ this.CA = CA;
+ }
+
+ public GHBean getGH() {
+ return GH;
+ }
+
+ public void setGH(GHBean GH) {
+ this.GH = GH;
+ }
+
+ public GABean getGA() {
+ return GA;
+ }
+
+ public void setGA(GABean GA) {
+ this.GA = GA;
+ }
+
+ public KHBean getKH() {
+ return KH;
+ }
+
+ public void setKH(KHBean KH) {
+ this.KH = KH;
+ }
+
+ public CZBean getCZ() {
+ return CZ;
+ }
+
+ public void setCZ(CZBean CZ) {
+ this.CZ = CZ;
+ }
+
+ public ZWBean getZW() {
+ return ZW;
+ }
+
+ public void setZW(ZWBean ZW) {
+ this.ZW = ZW;
+ }
+
+ public CMBean getCM() {
+ return CM;
+ }
+
+ public void setCM(CMBean CM) {
+ this.CM = CM;
+ }
+
+ public QABean getQA() {
+ return QA;
+ }
+
+ public void setQA(QABean QA) {
+ this.QA = QA;
+ }
+
+ public KYBean getKY() {
+ return KY;
+ }
+
+ public void setKY(KYBean KY) {
+ this.KY = KY;
+ }
+
+ public CCBean getCC() {
+ return CC;
+ }
+
+ public void setCC(CCBean CC) {
+ this.CC = CC;
+ }
+
+ public KMBean getKM() {
+ return KM;
+ }
+
+ public void setKM(KMBean KM) {
+ this.KM = KM;
+ }
+
+ public XKBean getXK() {
+ return XK;
+ }
+
+ public void setXK(XKBean XK) {
+ this.XK = XK;
+ }
+
+ public CIBean getCI() {
+ return CI;
+ }
+
+ public void setCI(CIBean CI) {
+ this.CI = CI;
+ }
+
+ public KWBean getKW() {
+ return KW;
+ }
+
+ public void setKW(KWBean KW) {
+ this.KW = KW;
+ }
+
+ public HRBean getHR() {
+ return HR;
+ }
+
+ public void setHR(HRBean HR) {
+ this.HR = HR;
+ }
+
+ public KEBean getKE() {
+ return KE;
+ }
+
+ public void setKE(KEBean KE) {
+ this.KE = KE;
+ }
+
+ public CKBean getCK() {
+ return CK;
+ }
+
+ public void setCK(CKBean CK) {
+ this.CK = CK;
+ }
+
+ public CWBean getCW() {
+ return CW;
+ }
+
+ public void setCW(CWBean CW) {
+ this.CW = CW;
+ }
+
+ public LVBean getLV() {
+ return LV;
+ }
+
+ public void setLV(LVBean LV) {
+ this.LV = LV;
+ }
+
+ public LSBean getLS() {
+ return LS;
+ }
+
+ public void setLS(LSBean LS) {
+ this.LS = LS;
+ }
+
+ public LABean getLA() {
+ return LA;
+ }
+
+ public void setLA(LABean LA) {
+ this.LA = LA;
+ }
+
+ public LBBean getLB() {
+ return LB;
+ }
+
+ public void setLB(LBBean LB) {
+ this.LB = LB;
+ }
+
+ public LTBean getLT() {
+ return LT;
+ }
+
+ public void setLT(LTBean LT) {
+ this.LT = LT;
+ }
+
+ public LRBean getLR() {
+ return LR;
+ }
+
+ public void setLR(LRBean LR) {
+ this.LR = LR;
+ }
+
+ public LYBean getLY() {
+ return LY;
+ }
+
+ public void setLY(LYBean LY) {
+ this.LY = LY;
+ }
+
+ public LIBean getLI() {
+ return LI;
+ }
+
+ public void setLI(LIBean LI) {
+ this.LI = LI;
+ }
+
+ public REBean getRE() {
+ return RE;
+ }
+
+ public void setRE(REBean RE) {
+ this.RE = RE;
+ }
+
+ public LUBean getLU() {
+ return LU;
+ }
+
+ public void setLU(LUBean LU) {
+ this.LU = LU;
+ }
+
+ public RWBean getRW() {
+ return RW;
+ }
+
+ public void setRW(RWBean RW) {
+ this.RW = RW;
+ }
+
+ public ROBean getRO() {
+ return RO;
+ }
+
+ public void setRO(ROBean RO) {
+ this.RO = RO;
+ }
+
+ public MGBean getMG() {
+ return MG;
+ }
+
+ public void setMG(MGBean MG) {
+ this.MG = MG;
+ }
+
+ public IMBean getIM() {
+ return IM;
+ }
+
+ public void setIM(IMBean IM) {
+ this.IM = IM;
+ }
+
+ public MVBean getMV() {
+ return MV;
+ }
+
+ public void setMV(MVBean MV) {
+ this.MV = MV;
+ }
+
+ public MTBean getMT() {
+ return MT;
+ }
+
+ public void setMT(MTBean MT) {
+ this.MT = MT;
+ }
+
+ public MWBean getMW() {
+ return MW;
+ }
+
+ public void setMW(MWBean MW) {
+ this.MW = MW;
+ }
+
+ public MYBean getMY() {
+ return MY;
+ }
+
+ public void setMY(MYBean MY) {
+ this.MY = MY;
+ }
+
+ public MLBean getML() {
+ return ML;
+ }
+
+ public void setML(MLBean ML) {
+ this.ML = ML;
+ }
+
+ public MKBean getMK() {
+ return MK;
+ }
+
+ public void setMK(MKBean MK) {
+ this.MK = MK;
+ }
+
+ public MHBean getMH() {
+ return MH;
+ }
+
+ public void setMH(MHBean MH) {
+ this.MH = MH;
+ }
+
+ public MQBean getMQ() {
+ return MQ;
+ }
+
+ public void setMQ(MQBean MQ) {
+ this.MQ = MQ;
+ }
+
+ public YTBean getYT() {
+ return YT;
+ }
+
+ public void setYT(YTBean YT) {
+ this.YT = YT;
+ }
+
+ public MUBean getMU() {
+ return MU;
+ }
+
+ public void setMU(MUBean MU) {
+ this.MU = MU;
+ }
+
+ public MRBean getMR() {
+ return MR;
+ }
+
+ public void setMR(MRBean MR) {
+ this.MR = MR;
+ }
+
+ public USBean getUS() {
+ return US;
+ }
+
+ public void setUS(USBean US) {
+ this.US = US;
+ }
+
+ public ASBean getAS() {
+ return AS;
+ }
+
+ public void setAS(ASBean AS) {
+ this.AS = AS;
+ }
+
+ public VIBean getVI() {
+ return VI;
+ }
+
+ public void setVI(VIBean VI) {
+ this.VI = VI;
+ }
+
+ public MNBean getMN() {
+ return MN;
+ }
+
+ public void setMN(MNBean MN) {
+ this.MN = MN;
+ }
+
+ public MSBean getMS() {
+ return MS;
+ }
+
+ public void setMS(MSBean MS) {
+ this.MS = MS;
+ }
+
+ public BDBean getBD() {
+ return BD;
+ }
+
+ public void setBD(BDBean BD) {
+ this.BD = BD;
+ }
+
+ public PEBean getPE() {
+ return PE;
+ }
+
+ public void setPE(PEBean PE) {
+ this.PE = PE;
+ }
+
+ public FMBean getFM() {
+ return FM;
+ }
+
+ public void setFM(FMBean FM) {
+ this.FM = FM;
+ }
+
+ public MMBean getMM() {
+ return MM;
+ }
+
+ public void setMM(MMBean MM) {
+ this.MM = MM;
+ }
+
+ public MDBean getMD() {
+ return MD;
+ }
+
+ public void setMD(MDBean MD) {
+ this.MD = MD;
+ }
+
+ public MABean getMA() {
+ return MA;
+ }
+
+ public void setMA(MABean MA) {
+ this.MA = MA;
+ }
+
+ public MCBean getMC() {
+ return MC;
+ }
+
+ public void setMC(MCBean MC) {
+ this.MC = MC;
+ }
+
+ public MZBean getMZ() {
+ return MZ;
+ }
+
+ public void setMZ(MZBean MZ) {
+ this.MZ = MZ;
+ }
+
+ public MXBean getMX() {
+ return MX;
+ }
+
+ public void setMX(MXBean MX) {
+ this.MX = MX;
+ }
+
+ public NABean getNA() {
+ return NA;
+ }
+
+ public void setNA(NABean NA) {
+ this.NA = NA;
+ }
+
+ public ZABean getZA() {
+ return ZA;
+ }
+
+ public void setZA(ZABean ZA) {
+ this.ZA = ZA;
+ }
+
+ public SSBean getSS() {
+ return SS;
+ }
+
+ public void setSS(SSBean SS) {
+ this.SS = SS;
+ }
+
+ public NRBean getNR() {
+ return NR;
+ }
+
+ public void setNR(NRBean NR) {
+ this.NR = NR;
+ }
+
+ public NIBean getNI() {
+ return NI;
+ }
+
+ public void setNI(NIBean NI) {
+ this.NI = NI;
+ }
+
+ public NPBean getNP() {
+ return NP;
+ }
+
+ public void setNP(NPBean NP) {
+ this.NP = NP;
+ }
+
+ public NEBean getNE() {
+ return NE;
+ }
+
+ public void setNE(NEBean NE) {
+ this.NE = NE;
+ }
+
+ public NGBean getNG() {
+ return NG;
+ }
+
+ public void setNG(NGBean NG) {
+ this.NG = NG;
+ }
+
+ public NUBean getNU() {
+ return NU;
+ }
+
+ public void setNU(NUBean NU) {
+ this.NU = NU;
+ }
+
+ public NOBean getNO() {
+ return NO;
+ }
+
+ public void setNO(NOBean NO) {
+ this.NO = NO;
+ }
+
+ public NFBean getNF() {
+ return NF;
+ }
+
+ public void setNF(NFBean NF) {
+ this.NF = NF;
+ }
+
+ public PWBean getPW() {
+ return PW;
+ }
+
+ public void setPW(PWBean PW) {
+ this.PW = PW;
+ }
+
+ public PTBean getPT() {
+ return PT;
+ }
+
+ public void setPT(PTBean PT) {
+ this.PT = PT;
+ }
+
+ public JPBean getJP() {
+ return JP;
+ }
+
+ public void setJP(JPBean JP) {
+ this.JP = JP;
+ }
+
+ public SEBean getSE() {
+ return SE;
+ }
+
+ public void setSE(SEBean SE) {
+ this.SE = SE;
+ }
+
+ public CHBean getCH() {
+ return CH;
+ }
+
+ public void setCH(CHBean CH) {
+ this.CH = CH;
+ }
+
+ public SVBean getSV() {
+ return SV;
+ }
+
+ public void setSV(SVBean SV) {
+ this.SV = SV;
+ }
+
+ public WSBean getWS() {
+ return WS;
+ }
+
+ public void setWS(WSBean WS) {
+ this.WS = WS;
+ }
+
+ public RSBean getRS() {
+ return RS;
+ }
+
+ public void setRS(RSBean RS) {
+ this.RS = RS;
+ }
+
+ public SLBean getSL() {
+ return SL;
+ }
+
+ public void setSL(SLBean SL) {
+ this.SL = SL;
+ }
+
+ public SNBean getSN() {
+ return SN;
+ }
+
+ public void setSN(SNBean SN) {
+ this.SN = SN;
+ }
+
+ public CYBean getCY() {
+ return CY;
+ }
+
+ public void setCY(CYBean CY) {
+ this.CY = CY;
+ }
+
+ public SCBean getSC() {
+ return SC;
+ }
+
+ public void setSC(SCBean SC) {
+ this.SC = SC;
+ }
+
+ public SABean getSA() {
+ return SA;
+ }
+
+ public void setSA(SABean SA) {
+ this.SA = SA;
+ }
+
+ public BLBean getBL() {
+ return BL;
+ }
+
+ public void setBL(BLBean BL) {
+ this.BL = BL;
+ }
+
+ public CXBean getCX() {
+ return CX;
+ }
+
+ public void setCX(CXBean CX) {
+ this.CX = CX;
+ }
+
+ public STBean getST() {
+ return ST;
+ }
+
+ public void setST(STBean ST) {
+ this.ST = ST;
+ }
+
+ public SHBean getSH() {
+ return SH;
+ }
+
+ public void setSH(SHBean SH) {
+ this.SH = SH;
+ }
+
+ public KNBean getKN() {
+ return KN;
+ }
+
+ public void setKN(KNBean KN) {
+ this.KN = KN;
+ }
+
+ public LCBean getLC() {
+ return LC;
+ }
+
+ public void setLC(LCBean LC) {
+ this.LC = LC;
+ }
+
+ public MFBean getMF() {
+ return MF;
+ }
+
+ public void setMF(MFBean MF) {
+ this.MF = MF;
+ }
+
+ public SMBean getSM() {
+ return SM;
+ }
+
+ public void setSM(SMBean SM) {
+ this.SM = SM;
+ }
+
+ public PMBean getPM() {
+ return PM;
+ }
+
+ public void setPM(PMBean PM) {
+ this.PM = PM;
+ }
+
+ public VCBean getVC() {
+ return VC;
+ }
+
+ public void setVC(VCBean VC) {
+ this.VC = VC;
+ }
+
+ public LKBean getLK() {
+ return LK;
+ }
+
+ public void setLK(LKBean LK) {
+ this.LK = LK;
+ }
+
+ public SKBean getSK() {
+ return SK;
+ }
+
+ public void setSK(SKBean SK) {
+ this.SK = SK;
+ }
+
+ public SIBean getSI() {
+ return SI;
+ }
+
+ public void setSI(SIBean SI) {
+ this.SI = SI;
+ }
+
+ public SJBean getSJ() {
+ return SJ;
+ }
+
+ public void setSJ(SJBean SJ) {
+ this.SJ = SJ;
+ }
+
+ public SZBean getSZ() {
+ return SZ;
+ }
+
+ public void setSZ(SZBean SZ) {
+ this.SZ = SZ;
+ }
+
+ public SDBean getSD() {
+ return SD;
+ }
+
+ public void setSD(SDBean SD) {
+ this.SD = SD;
+ }
+
+ public SRBean getSR() {
+ return SR;
+ }
+
+ public void setSR(SRBean SR) {
+ this.SR = SR;
+ }
+
+ public SBBean getSB() {
+ return SB;
+ }
+
+ public void setSB(SBBean SB) {
+ this.SB = SB;
+ }
+
+ public SOBean getSO() {
+ return SO;
+ }
+
+ public void setSO(SOBean SO) {
+ this.SO = SO;
+ }
+
+ public TJBean getTJ() {
+ return TJ;
+ }
+
+ public void setTJ(TJBean TJ) {
+ this.TJ = TJ;
+ }
+
+ public THBean getTH() {
+ return TH;
+ }
+
+ public void setTH(THBean TH) {
+ this.TH = TH;
+ }
+
+ public TZBean getTZ() {
+ return TZ;
+ }
+
+ public void setTZ(TZBean TZ) {
+ this.TZ = TZ;
+ }
+
+ public TOBean getTO() {
+ return TO;
+ }
+
+ public void setTO(TOBean TO) {
+ this.TO = TO;
+ }
+
+ public TCBean getTC() {
+ return TC;
+ }
+
+ public void setTC(TCBean TC) {
+ this.TC = TC;
+ }
+
+ public TABean getTA() {
+ return TA;
+ }
+
+ public void setTA(TABean TA) {
+ this.TA = TA;
+ }
+
+ public TTBean getTT() {
+ return TT;
+ }
+
+ public void setTT(TTBean TT) {
+ this.TT = TT;
+ }
+
+ public TNBean getTN() {
+ return TN;
+ }
+
+ public void setTN(TNBean TN) {
+ this.TN = TN;
+ }
+
+ public TVBean getTV() {
+ return TV;
+ }
+
+ public void setTV(TVBean TV) {
+ this.TV = TV;
+ }
+
+ public TRBean getTR() {
+ return TR;
+ }
+
+ public void setTR(TRBean TR) {
+ this.TR = TR;
+ }
+
+ public TMBean getTM() {
+ return TM;
+ }
+
+ public void setTM(TMBean TM) {
+ this.TM = TM;
+ }
+
+ public TKBean getTK() {
+ return TK;
+ }
+
+ public void setTK(TKBean TK) {
+ this.TK = TK;
+ }
+
+ public WFBean getWF() {
+ return WF;
+ }
+
+ public void setWF(WFBean WF) {
+ this.WF = WF;
+ }
+
+ public VUBean getVU() {
+ return VU;
+ }
+
+ public void setVU(VUBean VU) {
+ this.VU = VU;
+ }
+
+ public GTBean getGT() {
+ return GT;
+ }
+
+ public void setGT(GTBean GT) {
+ this.GT = GT;
+ }
+
+ public VEBean getVE() {
+ return VE;
+ }
+
+ public void setVE(VEBean VE) {
+ this.VE = VE;
+ }
+
+ public BNBean getBN() {
+ return BN;
+ }
+
+ public void setBN(BNBean BN) {
+ this.BN = BN;
+ }
+
+ public UGBean getUG() {
+ return UG;
+ }
+
+ public void setUG(UGBean UG) {
+ this.UG = UG;
+ }
+
+ public UABean getUA() {
+ return UA;
+ }
+
+ public void setUA(UABean UA) {
+ this.UA = UA;
+ }
+
+ public UYBean getUY() {
+ return UY;
+ }
+
+ public void setUY(UYBean UY) {
+ this.UY = UY;
+ }
+
+ public UZBean getUZ() {
+ return UZ;
+ }
+
+ public void setUZ(UZBean UZ) {
+ this.UZ = UZ;
+ }
+
+ public GRBean getGR() {
+ return GR;
+ }
+
+ public void setGR(GRBean GR) {
+ this.GR = GR;
+ }
+
+ public ESBean getES() {
+ return ES;
+ }
+
+ public void setES(ESBean ES) {
+ this.ES = ES;
+ }
+
+ public EHBean getEH() {
+ return EH;
+ }
+
+ public void setEH(EHBean EH) {
+ this.EH = EH;
+ }
+
+ public SGBean getSG() {
+ return SG;
+ }
+
+ public void setSG(SGBean SG) {
+ this.SG = SG;
+ }
+
+ public NCBean getNC() {
+ return NC;
+ }
+
+ public void setNC(NCBean NC) {
+ this.NC = NC;
+ }
+
+ public NZBean getNZ() {
+ return NZ;
+ }
+
+ public void setNZ(NZBean NZ) {
+ this.NZ = NZ;
+ }
+
+ public HUBean getHU() {
+ return HU;
+ }
+
+ public void setHU(HUBean HU) {
+ this.HU = HU;
+ }
+
+ public SYBean getSY() {
+ return SY;
+ }
+
+ public void setSY(SYBean SY) {
+ this.SY = SY;
+ }
+
+ public JMBean getJM() {
+ return JM;
+ }
+
+ public void setJM(JMBean JM) {
+ this.JM = JM;
+ }
+
+ public AMBean getAM() {
+ return AM;
+ }
+
+ public void setAM(AMBean AM) {
+ this.AM = AM;
+ }
+
+ public YEBean getYE() {
+ return YE;
+ }
+
+ public void setYE(YEBean YE) {
+ this.YE = YE;
+ }
+
+ public IQBean getIQ() {
+ return IQ;
+ }
+
+ public void setIQ(IQBean IQ) {
+ this.IQ = IQ;
+ }
+
+ public IRBean getIR() {
+ return IR;
+ }
+
+ public void setIR(IRBean IR) {
+ this.IR = IR;
+ }
+
+ public ILBean getIL() {
+ return IL;
+ }
+
+ public void setIL(ILBean IL) {
+ this.IL = IL;
+ }
+
+ public ITBean getIT() {
+ return IT;
+ }
+
+ public void setIT(ITBean IT) {
+ this.IT = IT;
+ }
+
+ public INBean getIN() {
+ return IN;
+ }
+
+ public void setIN(INBean IN) {
+ this.IN = IN;
+ }
+
+ public IDBean getID() {
+ return ID;
+ }
+
+ public void setID(IDBean ID) {
+ this.ID = ID;
+ }
+
+ public GBBean getGB() {
+ return GB;
+ }
+
+ public void setGB(GBBean GB) {
+ this.GB = GB;
+ }
+
+ public VGBean getVG() {
+ return VG;
+ }
+
+ public void setVG(VGBean VG) {
+ this.VG = VG;
+ }
+
+ public IOBean getIO() {
+ return IO;
+ }
+
+ public void setIO(IOBean IO) {
+ this.IO = IO;
+ }
+
+ public JOBean getJO() {
+ return JO;
+ }
+
+ public void setJO(JOBean JO) {
+ this.JO = JO;
+ }
+
+ public VNBean getVN() {
+ return VN;
+ }
+
+ public void setVN(VNBean VN) {
+ this.VN = VN;
+ }
+
+ public ZMBean getZM() {
+ return ZM;
+ }
+
+ public void setZM(ZMBean ZM) {
+ this.ZM = ZM;
+ }
+
+ public JEBean getJE() {
+ return JE;
+ }
+
+ public void setJE(JEBean JE) {
+ this.JE = JE;
+ }
+
+ public TDBean getTD() {
+ return TD;
+ }
+
+ public void setTD(TDBean TD) {
+ this.TD = TD;
+ }
+
+ public GIBean getGI() {
+ return GI;
+ }
+
+ public void setGI(GIBean GI) {
+ this.GI = GI;
+ }
+
+ public CLBean getCL() {
+ return CL;
+ }
+
+ public void setCL(CLBean CL) {
+ this.CL = CL;
+ }
+
+ public CFBean getCF() {
+ return CF;
+ }
+
+ public void setCF(CFBean CF) {
+ this.CF = CF;
+ }
+
+ public CNBean getCN() {
+ return CN;
+ }
+
+ public void setCN(CNBean CN) {
+ this.CN = CN;
+ }
+
+ public MOBean getMO() {
+ return MO;
+ }
+
+ public void setMO(MOBean MO) {
+ this.MO = MO;
+ }
+
+ public TWBean getTW() {
+ return TW;
+ }
+
+ public void setTW(TWBean TW) {
+ this.TW = TW;
+ }
+
+ public HKBean getHK() {
+ return HK;
+ }
+
+ public void setHK(HKBean HK) {
+ this.HK = HK;
+ }
+
+ static class Result {
+ int code;
+ String message;
+ T data;
+
+ Result(T data) {
+ this.code = 200;
+ this.message = "success";
+ this.data = data;
+ }
+ }
+
+ static class Person {
+
+ String name;
+ int gender;
+ String address;
+
+ Person(String name) {
+ this.name = name;
+ }
+ }
+
+
+ public static class ALBean {
+ /**
+ * name : 阿尔巴尼亚
+ * code : +355
+ * full_pinyin : aerbaniya
+ * head_pinyin : aebny
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class DZBean {
+ /**
+ * name : 阿尔及利亚
+ * code : +213
+ * full_pinyin : aerjiliya
+ * head_pinyin : aejly
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AFBean {
+ /**
+ * name : 阿富汗
+ * code : +93
+ * full_pinyin : afuhan
+ * head_pinyin : afh
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ARBean {
+ /**
+ * name : 阿根廷
+ * code : +54
+ * full_pinyin : agenting
+ * head_pinyin : agt
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AEBean {
+ /**
+ * name : 阿拉伯联合酋长国
+ * code : +971
+ * full_pinyin : alabolianheqiuzhangguo
+ * head_pinyin : alblhqzg
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AWBean {
+ /**
+ * name : 阿鲁巴
+ * code : +297
+ * full_pinyin : aluba
+ * head_pinyin : alb
+ * head_index : a
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class OMBean {
+ /**
+ * name : 阿曼
+ * code : +968
+ * full_pinyin : aman
+ * head_pinyin : am
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AZBean {
+ /**
+ * name : 阿塞拜疆
+ * code : +994
+ * full_pinyin : asaibaijiang
+ * head_pinyin : asbj
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ACBean {
+ /**
+ * name : 阿森松岛
+ * code : +247
+ * full_pinyin : asensongdao
+ * head_pinyin : assd
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class EGBean {
+ /**
+ * name : 埃及
+ * code : +20
+ * full_pinyin : aiji
+ * head_pinyin : aj
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ETBean {
+ /**
+ * name : 埃塞俄比亚
+ * code : +251
+ * full_pinyin : aisaiebiya
+ * head_pinyin : aseby
+ * head_index : a
+ * pattern : (\d{2})(\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class IEBean {
+ /**
+ * name : 爱尔兰
+ * code : +353
+ * full_pinyin : aierlan
+ * head_pinyin : ael
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class EEBean {
+ /**
+ * name : 爱沙尼亚
+ * code : +372
+ * full_pinyin : aishaniya
+ * head_pinyin : asny
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ADBean {
+ /**
+ * name : 安道尔
+ * code : +376
+ * full_pinyin : andaoer
+ * head_pinyin : ade
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AOBean {
+ /**
+ * name : 安哥拉
+ * code : +244
+ * full_pinyin : angela
+ * head_pinyin : agl
+ * head_index : a
+ * pattern : (\d{3})(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AIBean {
+ /**
+ * name : 安圭拉
+ * code : +1
+ * full_pinyin : anguila
+ * head_pinyin : agl
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AGBean {
+ /**
+ * name : 安提瓜和巴布达
+ * code : +1
+ * full_pinyin : antiguahebabuda
+ * head_pinyin : atghbbd
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ATBean {
+ /**
+ * name : 奥地利
+ * code : +43
+ * full_pinyin : aodili
+ * head_pinyin : adl
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AXBean {
+ /**
+ * name : 奥兰群岛
+ * code : +358
+ * full_pinyin : aolanqundao
+ * head_pinyin : alqd
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AUBean {
+ /**
+ * name : 澳大利亚
+ * code : +61
+ * full_pinyin : aodaliya
+ * head_pinyin : adly
+ * head_index : a
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BBBean {
+ /**
+ * name : 巴巴多斯
+ * code : +1
+ * full_pinyin : babaduosi
+ * head_pinyin : bbds
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PGBean {
+ /**
+ * name : 巴布亚新几内亚
+ * code : +675
+ * full_pinyin : babuyaxinjineiya
+ * head_pinyin : bbyxjny
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BSBean {
+ /**
+ * name : 巴哈马
+ * code : +1
+ * full_pinyin : bahama
+ * head_pinyin : bhm
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PKBean {
+ /**
+ * name : 巴基斯坦
+ * code : +92
+ * full_pinyin : bajisitan
+ * head_pinyin : bjst
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PYBean {
+ /**
+ * name : 巴拉圭
+ * code : +595
+ * full_pinyin : balagui
+ * head_pinyin : blg
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PSBean {
+ /**
+ * name : 巴勒斯坦领土
+ * code : +970
+ * full_pinyin : baleisitanlingtu
+ * head_pinyin : blstlt
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BHBean {
+ /**
+ * name : 巴林
+ * code : +973
+ * full_pinyin : balin
+ * head_pinyin : bl
+ * head_index : b
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PABean {
+ /**
+ * name : 巴拿马
+ * code : +507
+ * full_pinyin : banama
+ * head_pinyin : bnm
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BRBean {
+ /**
+ * name : 巴西
+ * code : +55
+ * full_pinyin : baxi
+ * head_pinyin : bx
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BYBean {
+ /**
+ * name : 白俄罗斯
+ * code : +375
+ * full_pinyin : baieluosi
+ * head_pinyin : bels
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BMBean {
+ /**
+ * name : 百慕大
+ * code : +1
+ * full_pinyin : baimuda
+ * head_pinyin : bmd
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BGBean {
+ /**
+ * name : 保加利亚
+ * code : +359
+ * full_pinyin : baojialiya
+ * head_pinyin : bjly
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MPBean {
+ /**
+ * name : 北马里亚纳群岛
+ * code : +1
+ * full_pinyin : beimaliyanaqundao
+ * head_pinyin : bmlynqd
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BJBean {
+ /**
+ * name : 贝宁
+ * code : +229
+ * full_pinyin : beining
+ * head_pinyin : bn
+ * head_index : b
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BEBean {
+ /**
+ * name : 比利时
+ * code : +32
+ * full_pinyin : bilishi
+ * head_pinyin : bls
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ISBean {
+ /**
+ * name : 冰岛
+ * code : +354
+ * full_pinyin : bingdao
+ * head_pinyin : bd
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PRBean {
+ /**
+ * name : 波多黎各
+ * code : +1
+ * full_pinyin : boduolige
+ * head_pinyin : bdlg
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PLBean {
+ /**
+ * name : 波兰
+ * code : +48
+ * full_pinyin : bolan
+ * head_pinyin : bl
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BABean {
+ /**
+ * name : 波斯尼亚和黑塞哥维那
+ * code : +387
+ * full_pinyin : bosiniyaheheisaigeweina
+ * head_pinyin : bsnyhhsgwn
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BOBean {
+ /**
+ * name : 玻利维亚
+ * code : +591
+ * full_pinyin : boliweiya
+ * head_pinyin : blwy
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BZBean {
+ /**
+ * name : 伯利兹
+ * code : +501
+ * full_pinyin : bolizi
+ * head_pinyin : blz
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BWBean {
+ /**
+ * name : 博茨瓦纳
+ * code : +267
+ * full_pinyin : bociwana
+ * head_pinyin : bcwn
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BTBean {
+ /**
+ * name : 不丹
+ * code : +975
+ * full_pinyin : budan
+ * head_pinyin : bd
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BFBean {
+ /**
+ * name : 布基纳法索
+ * code : +226
+ * full_pinyin : bujinafasuo
+ * head_pinyin : bjnfs
+ * head_index : b
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BIBean {
+ /**
+ * name : 布隆迪
+ * code : +257
+ * full_pinyin : bulongdi
+ * head_pinyin : bld
+ * head_index : b
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KPBean {
+ /**
+ * name : 朝鲜
+ * code : +850
+ * full_pinyin : chaoxian
+ * head_pinyin : cx
+ * head_index : c
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GQBean {
+ /**
+ * name : 赤道几内亚
+ * code : +240
+ * full_pinyin : chidaojineiya
+ * head_pinyin : cdjny
+ * head_index : c
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class DKBean {
+ /**
+ * name : 丹麦
+ * code : +45
+ * full_pinyin : danmai
+ * head_pinyin : dm
+ * head_index : d
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class DEBean {
+ /**
+ * name : 德国
+ * code : +49
+ * full_pinyin : deguo
+ * head_pinyin : dg
+ * head_index : d
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TLBean {
+ /**
+ * name : 东帝汶
+ * code : +670
+ * full_pinyin : dongdiwen
+ * head_pinyin : ddw
+ * head_index : d
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TGBean {
+ /**
+ * name : 多哥
+ * code : +228
+ * full_pinyin : duoge
+ * head_pinyin : dg
+ * head_index : d
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class DOBean {
+ /**
+ * name : 多米尼加共和国
+ * code : +1
+ * full_pinyin : duominijiagongheguo
+ * head_pinyin : dmnjghg
+ * head_index : d
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class DMBean {
+ /**
+ * name : 多米尼克
+ * code : +1
+ * full_pinyin : duominike
+ * head_pinyin : dmnk
+ * head_index : d
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class RUBean {
+ /**
+ * name : 俄罗斯
+ * code : +7
+ * full_pinyin : eluosi
+ * head_pinyin : els
+ * head_index : e
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ECBean {
+ /**
+ * name : 厄瓜多尔
+ * code : +593
+ * full_pinyin : eguaduoer
+ * head_pinyin : egde
+ * head_index : e
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ERBean {
+ /**
+ * name : 厄立特里亚
+ * code : +291
+ * full_pinyin : eliteliya
+ * head_pinyin : eltly
+ * head_index : e
+ * pattern : (\d)(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class FRBean {
+ /**
+ * name : 法国
+ * code : +33
+ * full_pinyin : faguo
+ * head_pinyin : fg
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class FOBean {
+ /**
+ * name : 法罗群岛
+ * code : +298
+ * full_pinyin : faluoqundao
+ * head_pinyin : flqd
+ * head_index : f
+ * pattern : (\d{6})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PFBean {
+ /**
+ * name : 法属波利尼西亚
+ * code : +689
+ * full_pinyin : fashubolinixiya
+ * head_pinyin : fsblnxy
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GFBean {
+ /**
+ * name : 法属圭亚那
+ * code : +594
+ * full_pinyin : fashuguiyana
+ * head_pinyin : fsgyn
+ * head_index : f
+ * pattern : (\d{3})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VABean {
+ /**
+ * name : 梵蒂冈
+ * code : +39
+ * full_pinyin : fandigang
+ * head_pinyin : fdg
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PHBean {
+ /**
+ * name : 菲律宾
+ * code : +63
+ * full_pinyin : feilvbin
+ * head_pinyin : flb
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class FJBean {
+ /**
+ * name : 斐济
+ * code : +679
+ * full_pinyin : feiji
+ * head_pinyin : fj
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class FIBean {
+ /**
+ * name : 芬兰
+ * code : +358
+ * full_pinyin : fenlan
+ * head_pinyin : fl
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CVBean {
+ /**
+ * name : 佛得角
+ * code : +238
+ * full_pinyin : fodejiao
+ * head_pinyin : fdj
+ * head_index : f
+ * pattern : (\d{3})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class FKBean {
+ /**
+ * name : 福克兰群岛
+ * code : +500
+ * full_pinyin : fukelanqundao
+ * head_pinyin : fklqd
+ * head_index : f
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GMBean {
+ /**
+ * name : 冈比亚
+ * code : +220
+ * full_pinyin : gangbiya
+ * head_pinyin : gby
+ * head_index : g
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CGBean {
+ /**
+ * name : 刚果(布)
+ * code : +242
+ * full_pinyin : gangguobu
+ * head_pinyin : ggb
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CDBean {
+ /**
+ * name : 刚果(金)
+ * code : +243
+ * full_pinyin : gangguojin
+ * head_pinyin : ggj
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class COBean {
+ /**
+ * name : 哥伦比亚
+ * code : +57
+ * full_pinyin : gelunbiya
+ * head_pinyin : glby
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CRBean {
+ /**
+ * name : 哥斯达黎加
+ * code : +506
+ * full_pinyin : gesidalijia
+ * head_pinyin : gsdlj
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GGBean {
+ /**
+ * name : 格恩西岛
+ * code : +44
+ * full_pinyin : geenxidao
+ * head_pinyin : gexd
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GDBean {
+ /**
+ * name : 格林纳达
+ * code : +1
+ * full_pinyin : gelinnada
+ * head_pinyin : glnd
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GLBean {
+ /**
+ * name : 格陵兰
+ * code : +299
+ * full_pinyin : gelinglan
+ * head_pinyin : gll
+ * head_index : g
+ * pattern : (\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GEBean {
+ /**
+ * name : 格鲁吉亚
+ * code : +995
+ * full_pinyin : gelujiya
+ * head_pinyin : gljy
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CUBean {
+ /**
+ * name : 古巴
+ * code : +53
+ * full_pinyin : guba
+ * head_pinyin : gb
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GPBean {
+ /**
+ * name : 瓜德罗普
+ * code : +590
+ * full_pinyin : guadeluopu
+ * head_pinyin : gdlp
+ * head_index : g
+ * pattern : (\d{3})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GUBean {
+ /**
+ * name : 关岛
+ * code : +1
+ * full_pinyin : guandao
+ * head_pinyin : gd
+ * head_index : g
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GYBean {
+ /**
+ * name : 圭亚那
+ * code : +592
+ * full_pinyin : guiyana
+ * head_pinyin : gyn
+ * head_index : g
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KZBean {
+ /**
+ * name : 哈萨克斯坦
+ * code : +7
+ * full_pinyin : hasakesitan
+ * head_pinyin : hskst
+ * head_index : h
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class HTBean {
+ /**
+ * name : 海地
+ * code : +509
+ * full_pinyin : haidi
+ * head_pinyin : hd
+ * head_index : h
+ * pattern : (\d{2})(\d{2})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KRBean {
+ /**
+ * name : 韩国
+ * code : +82
+ * full_pinyin : hanguo
+ * head_pinyin : hg
+ * head_index : h
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NLBean {
+ /**
+ * name : 荷兰
+ * code : +31
+ * full_pinyin : helan
+ * head_pinyin : hl
+ * head_index : h
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BQBean {
+ /**
+ * name : 荷属加勒比区
+ * code : +599
+ * full_pinyin : heshujialeibiqu
+ * head_pinyin : hsjlbq
+ * head_index : h
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SXBean {
+ /**
+ * name : 荷属圣马丁
+ * code : +1
+ * full_pinyin : heshushengmading
+ * head_pinyin : hssmd
+ * head_index : h
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MEBean {
+ /**
+ * name : 黑山
+ * code : +382
+ * full_pinyin : heishan
+ * head_pinyin : hs
+ * head_index : h
+ * pattern : (\d{2})(\d{3})(\d{3,4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class HNBean {
+ /**
+ * name : 洪都拉斯
+ * code : +504
+ * full_pinyin : hongdoulasi
+ * head_pinyin : hdls
+ * head_index : h
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KIBean {
+ /**
+ * name : 基里巴斯
+ * code : +686
+ * full_pinyin : jilibasi
+ * head_pinyin : jlbs
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class DJBean {
+ /**
+ * name : 吉布提
+ * code : +253
+ * full_pinyin : jibuti
+ * head_pinyin : jbt
+ * head_index : j
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KGBean {
+ /**
+ * name : 吉尔吉斯斯坦
+ * code : +996
+ * full_pinyin : jierjisisitan
+ * head_pinyin : jejsst
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GNBean {
+ /**
+ * name : 几内亚
+ * code : +224
+ * full_pinyin : jineiya
+ * head_pinyin : jny
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GWBean {
+ /**
+ * name : 几内亚比绍
+ * code : +245
+ * full_pinyin : jineiyabishao
+ * head_pinyin : jnybs
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CABean {
+ /**
+ * name : 加拿大
+ * code : +1
+ * full_pinyin : jianada
+ * head_pinyin : jnd
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GHBean {
+ /**
+ * name : 加纳
+ * code : +233
+ * full_pinyin : jiana
+ * head_pinyin : jn
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GABean {
+ /**
+ * name : 加蓬
+ * code : +241
+ * full_pinyin : jiapeng
+ * head_pinyin : jp
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KHBean {
+ /**
+ * name : 柬埔寨
+ * code : +855
+ * full_pinyin : jianpuzhai
+ * head_pinyin : jpz
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CZBean {
+ /**
+ * name : 捷克
+ * code : +420
+ * full_pinyin : jieke
+ * head_pinyin : jk
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ZWBean {
+ /**
+ * name : 津巴布韦
+ * code : +263
+ * full_pinyin : jinbabuwei
+ * head_pinyin : jbbw
+ * head_index : j
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CMBean {
+ /**
+ * name : 喀麦隆
+ * code : +237
+ * full_pinyin : kamailong
+ * head_pinyin : kml
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class QABean {
+ /**
+ * name : 卡塔尔
+ * code : +974
+ * full_pinyin : kataer
+ * head_pinyin : kte
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KYBean {
+ /**
+ * name : 开曼群岛
+ * code : +1
+ * full_pinyin : kaimanqundao
+ * head_pinyin : kmqd
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CCBean {
+ /**
+ * name : 科科斯(基林)群岛
+ * code : +61
+ * full_pinyin : kekesijilinqundao
+ * head_pinyin : kksjlqd
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KMBean {
+ /**
+ * name : 科摩罗
+ * code : +269
+ * full_pinyin : kemoluo
+ * head_pinyin : kml
+ * head_index : k
+ * pattern : (\d{3})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class XKBean {
+ /**
+ * name : 科索沃
+ * code : +383
+ * full_pinyin : kesuowo
+ * head_pinyin : ksw
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CIBean {
+ /**
+ * name : 科特迪瓦
+ * code : +225
+ * full_pinyin : ketediwa
+ * head_pinyin : ktdw
+ * head_index : k
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KWBean {
+ /**
+ * name : 科威特
+ * code : +965
+ * full_pinyin : keweite
+ * head_pinyin : kwt
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class HRBean {
+ /**
+ * name : 克罗地亚
+ * code : +385
+ * full_pinyin : keluodiya
+ * head_pinyin : kldy
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KEBean {
+ /**
+ * name : 肯尼亚
+ * code : +254
+ * full_pinyin : kenniya
+ * head_pinyin : kny
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CKBean {
+ /**
+ * name : 库克群岛
+ * code : +682
+ * full_pinyin : kukequndao
+ * head_pinyin : kkqd
+ * head_index : k
+ * pattern : (\d{2})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CWBean {
+ /**
+ * name : 库拉索
+ * code : +599
+ * full_pinyin : kulasuo
+ * head_pinyin : kls
+ * head_index : k
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LVBean {
+ /**
+ * name : 拉脱维亚
+ * code : +371
+ * full_pinyin : latuoweiya
+ * head_pinyin : ltwy
+ * head_index : l
+ * pattern : (\d{2})(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LSBean {
+ /**
+ * name : 莱索托
+ * code : +266
+ * full_pinyin : laisuotuo
+ * head_pinyin : lst
+ * head_index : l
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LABean {
+ /**
+ * name : 老挝
+ * code : +856
+ * full_pinyin : laozhua
+ * head_pinyin : lz
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LBBean {
+ /**
+ * name : 黎巴嫩
+ * code : +961
+ * full_pinyin : libanen
+ * head_pinyin : lbn
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LTBean {
+ /**
+ * name : 立陶宛
+ * code : +370
+ * full_pinyin : litaowan
+ * head_pinyin : ltw
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LRBean {
+ /**
+ * name : 利比里亚
+ * code : +231
+ * full_pinyin : libiliya
+ * head_pinyin : lbly
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LYBean {
+ /**
+ * name : 利比亚
+ * code : +218
+ * full_pinyin : libiya
+ * head_pinyin : lby
+ * head_index : l
+ * pattern : (\d{2})(\d{7})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LIBean {
+ /**
+ * name : 列支敦士登
+ * code : +423
+ * full_pinyin : liezhidunshideng
+ * head_pinyin : lzdsd
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class REBean {
+ /**
+ * name : 留尼汪
+ * code : +262
+ * full_pinyin : liuniwang
+ * head_pinyin : lnw
+ * head_index : l
+ * pattern : (\d{3})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LUBean {
+ /**
+ * name : 卢森堡
+ * code : +352
+ * full_pinyin : lusenbao
+ * head_pinyin : lsb
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class RWBean {
+ /**
+ * name : 卢旺达
+ * code : +250
+ * full_pinyin : luwangda
+ * head_pinyin : lwd
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ROBean {
+ /**
+ * name : 罗马尼亚
+ * code : +40
+ * full_pinyin : luomaniya
+ * head_pinyin : lmny
+ * head_index : l
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MGBean {
+ /**
+ * name : 马达加斯加
+ * code : +261
+ * full_pinyin : madajiasijia
+ * head_pinyin : mdjsj
+ * head_index : m
+ * pattern : (\d{2})(\d{2})(\d{3})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class IMBean {
+ /**
+ * name : 马恩岛
+ * code : +44
+ * full_pinyin : maendao
+ * head_pinyin : med
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MVBean {
+ /**
+ * name : 马尔代夫
+ * code : +960
+ * full_pinyin : maerdaifu
+ * head_pinyin : medf
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MTBean {
+ /**
+ * name : 马耳他
+ * code : +356
+ * full_pinyin : maerta
+ * head_pinyin : met
+ * head_index : m
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MWBean {
+ /**
+ * name : 马拉维
+ * code : +265
+ * full_pinyin : malawei
+ * head_pinyin : mlw
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MYBean {
+ /**
+ * name : 马来西亚
+ * code : +60
+ * full_pinyin : malaixiya
+ * head_pinyin : mlxy
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MLBean {
+ /**
+ * name : 马里
+ * code : +223
+ * full_pinyin : mali
+ * head_pinyin : ml
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MKBean {
+ /**
+ * name : 马其顿
+ * code : +389
+ * full_pinyin : maqidun
+ * head_pinyin : mqd
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MHBean {
+ /**
+ * name : 马绍尔群岛
+ * code : +692
+ * full_pinyin : mashaoerqundao
+ * head_pinyin : mseqd
+ * head_index : m
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MQBean {
+ /**
+ * name : 马提尼克
+ * code : +596
+ * full_pinyin : matinike
+ * head_pinyin : mtnk
+ * head_index : m
+ * pattern : (\d{3})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class YTBean {
+ /**
+ * name : 马约特
+ * code : +262
+ * full_pinyin : mayuete
+ * head_pinyin : myt
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MUBean {
+ /**
+ * name : 毛里求斯
+ * code : +230
+ * full_pinyin : maoliqiusi
+ * head_pinyin : mlqs
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MRBean {
+ /**
+ * name : 毛里塔尼亚
+ * code : +222
+ * full_pinyin : maolitaniya
+ * head_pinyin : mltny
+ * head_index : m
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class USBean {
+ /**
+ * name : 美国
+ * code : +1
+ * full_pinyin : meiguo
+ * head_pinyin : mg
+ * head_index : m
+ * pattern : (\d{3})(\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ASBean {
+ /**
+ * name : 美属萨摩亚
+ * code : +1
+ * full_pinyin : meishusamoya
+ * head_pinyin : mssmy
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VIBean {
+ /**
+ * name : 美属维尔京群岛
+ * code : +1
+ * full_pinyin : meishuweierjingqundao
+ * head_pinyin : mswejqd
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MNBean {
+ /**
+ * name : 蒙古
+ * code : +976
+ * full_pinyin : menggu
+ * head_pinyin : mg
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MSBean {
+ /**
+ * name : 蒙特塞拉特
+ * code : +1
+ * full_pinyin : mengtesailate
+ * head_pinyin : mtslt
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BDBean {
+ /**
+ * name : 孟加拉国
+ * code : +880
+ * full_pinyin : mengjialaguo
+ * head_pinyin : mjlg
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PEBean {
+ /**
+ * name : 秘鲁
+ * code : +51
+ * full_pinyin : bilu
+ * head_pinyin : bl
+ * head_index : b
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class FMBean {
+ /**
+ * name : 密克罗尼西亚
+ * code : +691
+ * full_pinyin : mikeluonixiya
+ * head_pinyin : mklnxy
+ * head_index : m
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MMBean {
+ /**
+ * name : 缅甸
+ * code : +95
+ * full_pinyin : miandian
+ * head_pinyin : md
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MDBean {
+ /**
+ * name : 摩尔多瓦
+ * code : +373
+ * full_pinyin : moerduowa
+ * head_pinyin : medw
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MABean {
+ /**
+ * name : 摩洛哥
+ * code : +212
+ * full_pinyin : moluoge
+ * head_pinyin : mlg
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MCBean {
+ /**
+ * name : 摩纳哥
+ * code : +377
+ * full_pinyin : monage
+ * head_pinyin : mng
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MZBean {
+ /**
+ * name : 莫桑比克
+ * code : +258
+ * full_pinyin : mosangbike
+ * head_pinyin : msbk
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MXBean {
+ /**
+ * name : 墨西哥
+ * code : +52
+ * full_pinyin : moxige
+ * head_pinyin : mxg
+ * head_index : m
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NABean {
+ /**
+ * name : 纳米比亚
+ * code : +264
+ * full_pinyin : namibiya
+ * head_pinyin : nmby
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ZABean {
+ /**
+ * name : 南非
+ * code : +27
+ * full_pinyin : nanfei
+ * head_pinyin : nf
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SSBean {
+ /**
+ * name : 南苏丹
+ * code : +211
+ * full_pinyin : nansudan
+ * head_pinyin : nsd
+ * head_index : n
+ * pattern : (\d{3})(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NRBean {
+ /**
+ * name : 瑙鲁
+ * code : +674
+ * full_pinyin : naolu
+ * head_pinyin : nl
+ * head_index : n
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NIBean {
+ /**
+ * name : 尼加拉瓜
+ * code : +505
+ * full_pinyin : nijialagua
+ * head_pinyin : njlg
+ * head_index : n
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NPBean {
+ /**
+ * name : 尼泊尔
+ * code : +977
+ * full_pinyin : niboer
+ * head_pinyin : nbe
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NEBean {
+ /**
+ * name : 尼日尔
+ * code : +227
+ * full_pinyin : nirier
+ * head_pinyin : nre
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NGBean {
+ /**
+ * name : 尼日利亚
+ * code : +234
+ * full_pinyin : niriliya
+ * head_pinyin : nrly
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NUBean {
+ /**
+ * name : 纽埃
+ * code : +683
+ * full_pinyin : niuai
+ * head_pinyin : na
+ * head_index : n
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NOBean {
+ /**
+ * name : 挪威
+ * code : +47
+ * full_pinyin : nuowei
+ * head_pinyin : nw
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NFBean {
+ /**
+ * name : 诺福克岛
+ * code : +672
+ * full_pinyin : nuofukedao
+ * head_pinyin : nfkd
+ * head_index : n
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PWBean {
+ /**
+ * name : 帕劳
+ * code : +680
+ * full_pinyin : palao
+ * head_pinyin : pl
+ * head_index : p
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PTBean {
+ /**
+ * name : 葡萄牙
+ * code : +351
+ * full_pinyin : putaoya
+ * head_pinyin : pty
+ * head_index : p
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class JPBean {
+ /**
+ * name : 日本
+ * code : +81
+ * full_pinyin : riben
+ * head_pinyin : rb
+ * head_index : r
+ * pattern : (\d{2})(\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SEBean {
+ /**
+ * name : 瑞典
+ * code : +46
+ * full_pinyin : ruidian
+ * head_pinyin : rd
+ * head_index : r
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CHBean {
+ /**
+ * name : 瑞士
+ * code : +41
+ * full_pinyin : ruishi
+ * head_pinyin : rs
+ * head_index : r
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SVBean {
+ /**
+ * name : 萨尔瓦多
+ * code : +503
+ * full_pinyin : saerwaduo
+ * head_pinyin : sewd
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class WSBean {
+ /**
+ * name : 萨摩亚
+ * code : +685
+ * full_pinyin : samoya
+ * head_pinyin : smy
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class RSBean {
+ /**
+ * name : 塞尔维亚
+ * code : +381
+ * full_pinyin : saierweiya
+ * head_pinyin : sewy
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SLBean {
+ /**
+ * name : 塞拉利昂
+ * code : +232
+ * full_pinyin : sailaliang
+ * head_pinyin : slla
+ * head_index : s
+ * pattern : (\d{2})(\d{6})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SNBean {
+ /**
+ * name : 塞内加尔
+ * code : +221
+ * full_pinyin : saineijiaer
+ * head_pinyin : snje
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CYBean {
+ /**
+ * name : 塞浦路斯
+ * code : +357
+ * full_pinyin : saipulusi
+ * head_pinyin : spls
+ * head_index : s
+ * pattern : (\d{2})(\d{6})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SCBean {
+ /**
+ * name : 塞舌尔
+ * code : +248
+ * full_pinyin : saisheer
+ * head_pinyin : sse
+ * head_index : s
+ * pattern : (\d)(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SABean {
+ /**
+ * name : 沙特阿拉伯
+ * code : +966
+ * full_pinyin : shatelabo
+ * head_pinyin : stlb
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BLBean {
+ /**
+ * name : 圣巴泰勒米
+ * code : +590
+ * full_pinyin : shengbataileimi
+ * head_pinyin : sbtlm
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CXBean {
+ /**
+ * name : 圣诞岛
+ * code : +61
+ * full_pinyin : shengdandao
+ * head_pinyin : sdd
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class STBean {
+ /**
+ * name : 圣多美和普林西比
+ * code : +239
+ * full_pinyin : shengduomeihepulinxibi
+ * head_pinyin : sdmhplxb
+ * head_index : s
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SHBean {
+ /**
+ * name : 圣赫勒拿
+ * code : +290
+ * full_pinyin : shengheleina
+ * head_pinyin : shln
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class KNBean {
+ /**
+ * name : 圣基茨和尼维斯
+ * code : +1
+ * full_pinyin : shengjiciheniweisi
+ * head_pinyin : sjchnws
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LCBean {
+ /**
+ * name : 圣卢西亚
+ * code : +1
+ * full_pinyin : shengluxiya
+ * head_pinyin : slxy
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MFBean {
+ /**
+ * name : 圣马丁岛
+ * code : +590
+ * full_pinyin : shengmadingdao
+ * head_pinyin : smdd
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SMBean {
+ /**
+ * name : 圣马力诺
+ * code : +378
+ * full_pinyin : shengmalinuo
+ * head_pinyin : smln
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class PMBean {
+ /**
+ * name : 圣皮埃尔和密克隆群岛
+ * code : +508
+ * full_pinyin : shengpiaierhemikelongqundao
+ * head_pinyin : spaehmklqd
+ * head_index : s
+ * pattern : (\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VCBean {
+ /**
+ * name : 圣文森特和格林纳丁斯
+ * code : +1
+ * full_pinyin : shengwensentehegelinnadingsi
+ * head_pinyin : swsthglnds
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class LKBean {
+ /**
+ * name : 斯里兰卡
+ * code : +94
+ * full_pinyin : sililanka
+ * head_pinyin : sllk
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SKBean {
+ /**
+ * name : 斯洛伐克
+ * code : +421
+ * full_pinyin : siluofake
+ * head_pinyin : slfk
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SIBean {
+ /**
+ * name : 斯洛文尼亚
+ * code : +386
+ * full_pinyin : siluowenniya
+ * head_pinyin : slwny
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SJBean {
+ /**
+ * name : 斯瓦尔巴和扬马延
+ * code : +47
+ * full_pinyin : siwaerbaheyangmayan
+ * head_pinyin : swebhymy
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SZBean {
+ /**
+ * name : 斯威士兰
+ * code : +268
+ * full_pinyin : siweishilan
+ * head_pinyin : swsl
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SDBean {
+ /**
+ * name : 苏丹
+ * code : +249
+ * full_pinyin : sudan
+ * head_pinyin : sd
+ * head_index : s
+ * pattern : (\d{2})(\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SRBean {
+ /**
+ * name : 苏里南
+ * code : +597
+ * full_pinyin : sulinan
+ * head_pinyin : sln
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SBBean {
+ /**
+ * name : 所罗门群岛
+ * code : +677
+ * full_pinyin : suoluomenqundao
+ * head_pinyin : slmqd
+ * head_index : s
+ * pattern : (\d{2})(\d{5})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SOBean {
+ /**
+ * name : 索马里
+ * code : +252
+ * full_pinyin : suomali
+ * head_pinyin : sml
+ * head_index : s
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TJBean {
+ /**
+ * name : 塔吉克斯坦
+ * code : +992
+ * full_pinyin : tajikesitan
+ * head_pinyin : tjkst
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class THBean {
+ /**
+ * name : 泰国
+ * code : +66
+ * full_pinyin : taiguo
+ * head_pinyin : tg
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TZBean {
+ /**
+ * name : 坦桑尼亚
+ * code : +255
+ * full_pinyin : tansangniya
+ * head_pinyin : tsny
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TOBean {
+ /**
+ * name : 汤加
+ * code : +676
+ * full_pinyin : tangjia
+ * head_pinyin : tj
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TCBean {
+ /**
+ * name : 特克斯和凯科斯群岛
+ * code : +1
+ * full_pinyin : tekesihekaikesiqundao
+ * head_pinyin : tkshkksqd
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TABean {
+ /**
+ * name : 特里斯坦-达库尼亚群岛
+ * code : +290
+ * full_pinyin : telisitan-dakuniyaqundao
+ * head_pinyin : tlst-dknyqd
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TTBean {
+ /**
+ * name : 特立尼达和多巴哥
+ * code : +1
+ * full_pinyin : telinidaheduobage
+ * head_pinyin : tlndhdbg
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TNBean {
+ /**
+ * name : 突尼斯
+ * code : +216
+ * full_pinyin : tunisi
+ * head_pinyin : tns
+ * head_index : t
+ * pattern : (\d{2})(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TVBean {
+ /**
+ * name : 图瓦卢
+ * code : +688
+ * full_pinyin : tuwalu
+ * head_pinyin : twl
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TRBean {
+ /**
+ * name : 土耳其
+ * code : +90
+ * full_pinyin : tuerqi
+ * head_pinyin : teq
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TMBean {
+ /**
+ * name : 土库曼斯坦
+ * code : +993
+ * full_pinyin : tukumansitan
+ * head_pinyin : tkmst
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TKBean {
+ /**
+ * name : 托克劳
+ * code : +690
+ * full_pinyin : tuokelao
+ * head_pinyin : tkl
+ * head_index : t
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class WFBean {
+ /**
+ * name : 瓦利斯和富图纳
+ * code : +681
+ * full_pinyin : walisihefutuna
+ * head_pinyin : wlshftn
+ * head_index : w
+ * pattern : (\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VUBean {
+ /**
+ * name : 瓦努阿图
+ * code : +678
+ * full_pinyin : wanutu
+ * head_pinyin : wnt
+ * head_index : w
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GTBean {
+ /**
+ * name : 危地马拉
+ * code : +502
+ * full_pinyin : weidimala
+ * head_pinyin : wdml
+ * head_index : w
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VEBean {
+ /**
+ * name : 委内瑞拉
+ * code : +58
+ * full_pinyin : weineiruila
+ * head_pinyin : wnrl
+ * head_index : w
+ * pattern : (\d{3})(\d{7})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class BNBean {
+ /**
+ * name : 文莱
+ * code : +673
+ * full_pinyin : wenlai
+ * head_pinyin : wl
+ * head_index : w
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class UGBean {
+ /**
+ * name : 乌干达
+ * code : +256
+ * full_pinyin : wuganda
+ * head_pinyin : wgd
+ * head_index : w
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class UABean {
+ /**
+ * name : 乌克兰
+ * code : +380
+ * full_pinyin : wukelan
+ * head_pinyin : wkl
+ * head_index : w
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class UYBean {
+ /**
+ * name : 乌拉圭
+ * code : +598
+ * full_pinyin : wulagui
+ * head_pinyin : wlg
+ * head_index : w
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class UZBean {
+ /**
+ * name : 乌兹别克斯坦
+ * code : +998
+ * full_pinyin : wuzibiekesitan
+ * head_pinyin : wzbkst
+ * head_index : w
+ * pattern : (\d{2})(\d{3})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GRBean {
+ /**
+ * name : 希腊
+ * code : +30
+ * full_pinyin : xila
+ * head_pinyin : xl
+ * head_index : x
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ESBean {
+ /**
+ * name : 西班牙
+ * code : +34
+ * full_pinyin : xibanya
+ * head_pinyin : xby
+ * head_index : x
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class EHBean {
+ /**
+ * name : 西撒哈拉
+ * code : +212
+ * full_pinyin : xisahala
+ * head_pinyin : xshl
+ * head_index : x
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SGBean {
+ /**
+ * name : 新加坡
+ * code : +65
+ * full_pinyin : xinjiapo
+ * head_pinyin : xjp
+ * head_index : x
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NCBean {
+ /**
+ * name : 新喀里多尼亚
+ * code : +687
+ * full_pinyin : xinkaliduoniya
+ * head_pinyin : xkldny
+ * head_index : x
+ * pattern : (\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class NZBean {
+ /**
+ * name : 新西兰
+ * code : +64
+ * full_pinyin : xinxilan
+ * head_pinyin : xxl
+ * head_index : x
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class HUBean {
+ /**
+ * name : 匈牙利
+ * code : +36
+ * full_pinyin : xiongyali
+ * head_pinyin : xyl
+ * head_index : x
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class SYBean {
+ /**
+ * name : 叙利亚
+ * code : +963
+ * full_pinyin : xuliya
+ * head_pinyin : xly
+ * head_index : x
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class JMBean {
+ /**
+ * name : 牙买加
+ * code : +1
+ * full_pinyin : yamaijia
+ * head_pinyin : ymj
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class AMBean {
+ /**
+ * name : 亚美尼亚
+ * code : +374
+ * full_pinyin : yameiniya
+ * head_pinyin : ymny
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class YEBean {
+ /**
+ * name : 也门
+ * code : +967
+ * full_pinyin : yemen
+ * head_pinyin : ym
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class IQBean {
+ /**
+ * name : 伊拉克
+ * code : +964
+ * full_pinyin : yilake
+ * head_pinyin : ylk
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class IRBean {
+ /**
+ * name : 伊朗
+ * code : +98
+ * full_pinyin : yilang
+ * head_pinyin : yl
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ILBean {
+ /**
+ * name : 以色列
+ * code : +972
+ * full_pinyin : yiselie
+ * head_pinyin : ysl
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ITBean {
+ /**
+ * name : 意大利
+ * code : +39
+ * full_pinyin : yidali
+ * head_pinyin : ydl
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class INBean {
+ /**
+ * name : 印度
+ * code : +91
+ * full_pinyin : yindu
+ * head_pinyin : yd
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class IDBean {
+ /**
+ * name : 印度尼西亚
+ * code : +62
+ * full_pinyin : yindunixiya
+ * head_pinyin : ydnxy
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GBBean {
+ /**
+ * name : 英国
+ * code : +44
+ * full_pinyin : yingguo
+ * head_pinyin : yg
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VGBean {
+ /**
+ * name : 英属维尔京群岛
+ * code : +1
+ * full_pinyin : yingshuweierjingqundao
+ * head_pinyin : yswejqd
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class IOBean {
+ /**
+ * name : 英属印度洋领地
+ * code : +246
+ * full_pinyin : yingshuyinduyanglingde
+ * head_pinyin : ysydyld
+ * head_index : y
+ * pattern : (\d{3})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class JOBean {
+ /**
+ * name : 约旦
+ * code : +962
+ * full_pinyin : yuedan
+ * head_pinyin : yd
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class VNBean {
+ /**
+ * name : 越南
+ * code : +84
+ * full_pinyin : yuenan
+ * head_pinyin : yn
+ * head_index : y
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class ZMBean {
+ /**
+ * name : 赞比亚
+ * code : +260
+ * full_pinyin : zanbiya
+ * head_pinyin : zby
+ * head_index : z
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class JEBean {
+ /**
+ * name : 泽西岛
+ * code : +44
+ * full_pinyin : zexidao
+ * head_pinyin : zxd
+ * head_index : z
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TDBean {
+ /**
+ * name : 乍得
+ * code : +235
+ * full_pinyin : zhade
+ * head_pinyin : zd
+ * head_index : z
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class GIBean {
+ /**
+ * name : 直布罗陀
+ * code : +350
+ * full_pinyin : zhibuluotuo
+ * head_pinyin : zblt
+ * head_index : z
+ * pattern : (\d{3})(\d{5})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CLBean {
+ /**
+ * name : 智利
+ * code : +56
+ * full_pinyin : zhili
+ * head_pinyin : zl
+ * head_index : z
+ * pattern :
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CFBean {
+ /**
+ * name : 中非共和国
+ * code : +236
+ * full_pinyin : zhongfeigongheguo
+ * head_pinyin : zfghg
+ * head_index : z
+ * pattern : (\d{2})(\d{2})(\d{2})(\d{2})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class CNBean {
+ /**
+ * name : 中国
+ * code : +86
+ * full_pinyin : zhongguo
+ * head_pinyin : zg
+ * head_index : z
+ * pattern : (\d{3})(\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class MOBean {
+ /**
+ * name : 中国澳门特别行政区
+ * code : +853
+ * full_pinyin : zhongguoaomentebiexingzhengqu
+ * head_pinyin : zgamtbxzq
+ * head_index : z
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class TWBean {
+ /**
+ * name : 中国台湾
+ * code : +886
+ * full_pinyin : zhongguotaiwan
+ * head_pinyin : zgtw
+ * head_index : z
+ * pattern : (\d{3})(\d{3})(\d{3})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
+ }
+ }
+
+ public static class HKBean {
+ /**
+ * name : 中国香港特别行政区
+ * code : +852
+ * full_pinyin : zhongguoxianggangtebiexingzhengqu
+ * head_pinyin : zgxgtbxzq
+ * head_index : z
+ * pattern : (\d{4})(\d{4})
+ */
+
+ private String name;
+ private String code;
+ private String full_pinyin;
+ private String head_pinyin;
+ private String head_index;
+ private String pattern;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getFull_pinyin() {
+ return full_pinyin;
+ }
+
+ public void setFull_pinyin(String full_pinyin) {
+ this.full_pinyin = full_pinyin;
+ }
+
+ public String getHead_pinyin() {
+ return head_pinyin;
+ }
+
+ public void setHead_pinyin(String head_pinyin) {
+ this.head_pinyin = head_pinyin;
+ }
+
+ public String getHead_index() {
+ return head_index;
+ }
+
+ public void setHead_index(String head_index) {
+ this.head_index = head_index;
+ }
+
+ public String getPattern() {
+ return pattern;
+ }
+
+ public void setPattern(String pattern) {
+ this.pattern = pattern;
}
}
}
\ No newline at end of file
diff --git a/utilcode/pkg/build.gradle b/utilcode/pkg/build.gradle
index 637f119cc4..ea138dd9b4 100644
--- a/utilcode/pkg/build.gradle
+++ b/utilcode/pkg/build.gradle
@@ -4,5 +4,6 @@ apply {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
+ api gradle.ext.dep.utilcode_export
api gradle.ext.dep.lib_common
}
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/AndroidManifest.xml b/utilcode/pkg/src/main/AndroidManifest.xml
index c16998567f..37a1617bb8 100644
--- a/utilcode/pkg/src/main/AndroidManifest.xml
+++ b/utilcode/pkg/src/main/AndroidManifest.xml
@@ -1,6 +1,8 @@
+
+
@@ -135,6 +137,10 @@
android:name=".feature.clean.CleanActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:launchMode="singleTop" />
+
("BusActivity#start", this)
+ override fun initView(savedInstanceState: Bundle?, contentView: View?) {
+ applyDebouncingClickListener(
+ coreUtilActivityBtn,
+ coreUtilAdaptScreenBtn,
+ coreUtilAppBtn,
+ coreUtilBarBtn,
+ coreUtilBrightnessBtn,
+ coreUtilBusBtn,
+ coreUtilCleanBtn,
+ coreUtilClickBtn,
+ coreUtilCrashBtn,
+ coreUtilDeviceBtn,
+ coreUtilFlashlightBtn,
+ coreUtilFragmentBtn,
+ coreUtilImageBtn,
+ coreUtilKeyboardBtn,
+ coreUtilLogBtn,
+ coreUtilMetaDataBtn,
+ coreUtilNetworkBtn,
+ coreUtilPathBtn,
+ coreUtilPermissionBtn,
+ coreUtilPhoneBtn,
+ coreUtilProcessBtn,
+ coreUtilReflectBtn,
+ coreUtilResourceBtn,
+ coreUtilRomBtn,
+ coreUtilScreenBtn,
+ coreUtilSdcardBtn,
+ coreUtilSnackbarBtn,
+ coreUtilSpStaticBtn,
+ coreUtilSpanBtn,
+ coreUtilToastBtn,
+ coreUtilVibrateBtn
+ )
}
- fun crashClick(view: View) {
- throw NullPointerException("crash test")
- }
-
- fun deviceClick(view: View) {
- DeviceActivity.start(this)
- }
-
- fun flashlightClick(view: View) {
- FlashlightActivity.start(this)
- }
-
- fun fragmentClick(view: View) {
- FragmentActivity.start(this)
- }
-
- fun imageClick(view: View) {
- ImageActivity.start(this)
- }
-
- fun keyboardClick(view: View) {
- KeyboardActivity.start(this)
- }
-
- fun logClick(view: View) {
- LogActivity.start(this)
- }
-
- fun metaDataClick(view: View) {
- MetaDataActivity.start(this)
- }
-
- fun networkClick(view: View) {
- NetworkActivity.start(this)
- }
-
- fun pathClick(view: View) {
- PathActivity.start(this)
- }
-
- fun permissionClick(view: View) {
- PermissionActivity.start(this)
- }
-
- fun phoneClick(view: View) {
- PhoneActivity.start(this)
- }
-
- fun processClick(view: View) {
- ProcessActivity.start(this)
- }
-
- fun reflectClick(view: View) {
- ReflectActivity.start(this)
- }
-
- fun resourceClick(view: View) {
- ResourceActivity.start(this)
- }
-
- fun romClick(view: View) {
- RomActivity.start(this)
- }
-
- fun screenClick(view: View) {
- ScreenActivity.start(this)
- }
-
- fun sdcardClick(view: View) {
- SDCardActivity.start(this)
- }
-
- fun snackbarClick(view: View) {
- SnackbarActivity.start(this)
- }
-
- fun spStaticClick(view: View) {
- SPStaticActivity.start(this)
- }
-
- fun spannableClick(view: View) {
- SpanActivity.start(this)
- }
-
- fun toastClick(view: View) {
- ToastActivity.start(this)
- }
+ override fun doBusiness() {}
- fun vibrateClick(view: View) {
- VibrateActivity.start(this)
+ override fun onDebouncingClick(view: View) {
+ when (view.id) {
+ R.id.coreUtilActivityBtn -> ActivityActivity.start(this)
+ R.id.coreUtilAdaptScreenBtn -> AdaptScreenActivity.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.coreUtilCleanBtn -> CleanActivity.start(this)
+ R.id.coreUtilClickBtn -> ClickActivity.start(this)
+ R.id.coreUtilCrashBtn -> throw NullPointerException("crash test")
+ R.id.coreUtilDeviceBtn -> DeviceActivity.start(this)
+ R.id.coreUtilFlashlightBtn -> FlashlightActivity.start(this)
+ R.id.coreUtilFragmentBtn -> FragmentActivity.start(this)
+ R.id.coreUtilImageBtn -> ImageActivity.start(this)
+ R.id.coreUtilKeyboardBtn -> KeyboardActivity.start(this)
+ R.id.coreUtilLogBtn -> LogActivity.start(this)
+ R.id.coreUtilMetaDataBtn -> MetaDataActivity.start(this)
+ R.id.coreUtilNetworkBtn -> NetworkActivity.start(this)
+ R.id.coreUtilNetworkBtn -> NetworkActivity.start(this)
+ R.id.coreUtilPathBtn -> PathActivity.start(this)
+ R.id.coreUtilPermissionBtn -> PermissionActivity.start(this)
+ R.id.coreUtilPhoneBtn -> PhoneActivity.start(this)
+ R.id.coreUtilProcessBtn -> ProcessActivity.start(this)
+ R.id.coreUtilReflectBtn -> ReflectActivity.start(this)
+ R.id.coreUtilResourceBtn -> ResourceActivity.start(this)
+ R.id.coreUtilRomBtn -> RomActivity.start(this)
+ R.id.coreUtilScreenBtn -> ScreenActivity.start(this)
+ R.id.coreUtilSdcardBtn -> SDCardActivity.start(this)
+ R.id.coreUtilSnackbarBtn -> SnackbarActivity.start(this)
+ R.id.coreUtilSpStaticBtn -> SPStaticActivity.start(this)
+ R.id.coreUtilSpanBtn -> SpanActivity.start(this)
+ R.id.coreUtilToastBtn -> ToastActivity.start(this)
+ R.id.coreUtilVibrateBtn -> VibrateActivity.start(this)
+ }
}
}
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 cf2fc5921d..368d6f798a 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
@@ -54,35 +54,37 @@ class ActivityActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- activityClzBtn.setOnClickListener(this)
- activityClzOptBtn.setOnClickListener(this)
- activityClzAnimBtn.setOnClickListener(this)
- activityActClzBtn.setOnClickListener(this)
- activityActClzOptBtn.setOnClickListener(this)
- activityActClzSharedElementBtn.setOnClickListener(this)
- activityActClzAnimBtn.setOnClickListener(this)
- activityPkgClsBtn.setOnClickListener(this)
- activityPkgClsOptBtn.setOnClickListener(this)
- activityPkgClsAnimBtn.setOnClickListener(this)
- activityActPkgClsBtn.setOnClickListener(this)
- activityActPkgClsOptBtn.setOnClickListener(this)
- activityActPkgClsSharedElementBtn.setOnClickListener(this)
- activityActPkgClsAnimBtn.setOnClickListener(this)
- activityIntentBtn.setOnClickListener(this)
- activityIntentOptBtn.setOnClickListener(this)
- activityIntentSharedElementBtn.setOnClickListener(this)
- activityIntentAnimBtn.setOnClickListener(this)
- activityIntentsBtn.setOnClickListener(this)
- activityIntentsOptBtn.setOnClickListener(this)
- activityIntentsAnimBtn.setOnClickListener(this)
- activityActIntentsBtn.setOnClickListener(this)
- activityActIntentsOptBtn.setOnClickListener(this)
- activityActIntentsAnimBtn.setOnClickListener(this)
- activityActClzSharedElementBtn.setOnClickListener(this)
- activityStartHomeActivityBtn.setOnClickListener(this)
- activityFinishActivityBtn.setOnClickListener(this)
- activityFinishToActivityBtn.setOnClickListener(this)
- activityFinishAllActivitiesBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ activityClzBtn,
+ activityClzOptBtn,
+ activityClzAnimBtn,
+ activityActClzBtn,
+ activityActClzOptBtn,
+ activityActClzSharedElementBtn,
+ activityActClzAnimBtn,
+ activityPkgClsBtn,
+ activityPkgClsOptBtn,
+ activityPkgClsAnimBtn,
+ activityActPkgClsBtn,
+ activityActPkgClsOptBtn,
+ activityActPkgClsSharedElementBtn,
+ activityActPkgClsAnimBtn,
+ activityIntentBtn,
+ activityIntentOptBtn,
+ activityIntentSharedElementBtn,
+ activityIntentAnimBtn,
+ activityIntentsBtn,
+ activityIntentsOptBtn,
+ activityIntentsAnimBtn,
+ activityActIntentsBtn,
+ activityActIntentsOptBtn,
+ activityActIntentsAnimBtn,
+ activityActClzSharedElementBtn,
+ activityStartHomeActivityBtn,
+ activityFinishActivityBtn,
+ activityFinishToActivityBtn,
+ activityFinishAllActivitiesBtn
+ )
SpanUtils.with(activityAboutTv)
.appendLine("isActivityExists: " + ActivityUtils.isActivityExists(AppUtils.getAppPackageName(), SubActivityActivity::class.java.name))
.appendLine("getLauncherActivity: " + ActivityUtils.getLauncherActivity(AppUtils.getAppPackageName()))
@@ -103,7 +105,7 @@ class ActivityActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.activityClzBtn -> ActivityUtils.startActivity(SubActivityActivity::class.java)
R.id.activityClzOptBtn -> ActivityUtils.startActivity(SubActivityActivity::class.java,
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 c0d8772ac8..a8640f7116 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
@@ -38,7 +38,7 @@ class SubActivityActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun onBackPressed() {
super.onBackPressed()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt
index a7a1a61f68..4d993f368d 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptCloseActivity.kt
@@ -35,7 +35,7 @@ class AdaptCloseActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun getResources(): Resources {
return AdaptScreenUtils.closeAdapt(super.getResources())
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt
index 244c9c66b5..ddd68d1994 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptHeightActivity.kt
@@ -38,7 +38,7 @@ class AdaptHeightActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun getResources(): Resources {
return AdaptScreenUtils.adaptHeight(super.getResources(), 1920)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
index 423f81123c..564df79987 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
@@ -28,14 +28,16 @@ class AdaptScreenActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- adaptScreenAdaptWidthBtn.setOnClickListener(this)
- adaptScreenAdaptHeightBtn.setOnClickListener(this)
- adaptScreenCloseAdaptBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ adaptScreenAdaptWidthBtn,
+ adaptScreenAdaptHeightBtn,
+ adaptScreenCloseAdaptBtn
+ )
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.adaptScreenAdaptWidthBtn -> AdaptWidthActivity.start(this)
R.id.adaptScreenAdaptHeightBtn -> AdaptHeightActivity.start(this)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt
index e8e2197155..efb0d574b9 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptWidthActivity.kt
@@ -38,7 +38,7 @@ class AdaptWidthActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun getResources(): Resources {
return AdaptScreenUtils.adaptWidth(super.getResources(), 1080)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
index 088ef712f7..e7cf47c08f 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
@@ -53,14 +53,16 @@ class AppActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- appInstallAppBtn.setOnClickListener(this)
- appInstallAppSilentBtn.setOnClickListener(this)
- appUninstallAppBtn.setOnClickListener(this)
- appUninstallAppSilentBtn.setOnClickListener(this)
- appLaunchAppBtn.setOnClickListener(this)
- appRelaunchAppBtn.setOnClickListener(this)
- appExitAppBtn.setOnClickListener(this)
- appLaunchAppDetailsSettingsBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ appInstallAppBtn,
+ appInstallAppSilentBtn,
+ appUninstallAppBtn,
+ appUninstallAppSilentBtn,
+ appLaunchAppBtn,
+ appRelaunchAppBtn,
+ appExitAppBtn,
+ appLaunchAppDetailsSettingsBtn
+ )
SpanUtils.with(appAboutTv)
.appendLine("isAppRoot: " + AppUtils.isAppRoot())
.appendLine("isAppDebug: " + AppUtils.isAppDebug())
@@ -84,7 +86,7 @@ class AppActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.appInstallAppBtn -> if (AppUtils.isAppInstalled(Config.TEST_PKG)) {
ToastUtils.showShort(R.string.app_install_tips)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt
index 0090fa74f9..a2b1260d84 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarActivity.kt
@@ -36,20 +36,22 @@ class BarActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusAboutBtn.setOnClickListener(this)
- barStatusSetColorBtn.setOnClickListener(this)
- barStatusSetAlphaBtn.setOnClickListener(this)
- barStatusSetImageViewBtn.setOnClickListener(this)
- barStatusSetCustomBtn.setOnClickListener(this)
- barStatusSetFragmentBtn.setOnClickListener(this)
- barStatusSetDrawerBtn.setOnClickListener(this)
- barNotificationAboutBtn.setOnClickListener(this)
- barNavAboutBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ barStatusAboutBtn,
+ barStatusSetColorBtn,
+ barStatusSetAlphaBtn,
+ barStatusSetImageViewBtn,
+ barStatusSetCustomBtn,
+ barStatusSetFragmentBtn,
+ barStatusSetDrawerBtn,
+ barNotificationAboutBtn,
+ barNavAboutBtn
+ )
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusAboutBtn -> BarStatusActivity.start(this)
R.id.barStatusSetColorBtn -> BarStatusColorActivity.start(this)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt
index 1a15e2cb31..6336cf7fe3 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNavActivity.kt
@@ -47,13 +47,13 @@ class BarNavActivity : CommonTitleActivity() {
barNavVisibilityCb.setOnCheckedChangeListener { buttonView, isChecked ->
BarUtils.setNavBarVisibility(this, isChecked)
}
- barNavSetColorBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barNavSetColorBtn)
}
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barNavSetColorBtn -> if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
BarUtils.setNavBarColor(this, ColorUtils.getRandomColor())
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt
index b25fcb89d3..6301874d53 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarNotificationActivity.kt
@@ -40,12 +40,12 @@ class BarNotificationActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barNotificationShowBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barNotificationShowBtn)
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barNotificationShowBtn -> {
BarUtils.setNotificationBarVisibility(true)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt
index a61e799bd5..ffe0bd8ddd 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusActivity.kt
@@ -56,7 +56,7 @@ class BarStatusActivity : CommonTitleActivity() {
updateAboutStatus()
}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
private fun updateAboutStatus() {
SpanUtils.with(barStatusAboutTv)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt
index e89d18589b..c1d9af81f3 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaActivity.kt
@@ -55,7 +55,7 @@ class BarStatusAlphaActivity : CommonBackActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusAlphaSetTransparentBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barStatusAlphaSetTransparentBtn)
barStatusAlphaChangeAlphaSb.setOnSeekBarChangeListener(translucentListener)
barStatusAlphaAboutTv.text = mAlpha.toString()
@@ -65,7 +65,7 @@ class BarStatusAlphaActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusAlphaSetTransparentBtn -> barStatusAlphaChangeAlphaSb.progress = 0
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt
index db81d8e8ab..a1ee0d12d4 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusAlphaFragment.kt
@@ -49,7 +49,7 @@ class BarStatusAlphaFragment : BaseLazyFragment() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusAlphaFragmentSetTransparentBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barStatusAlphaFragmentSetTransparentBtn)
barStatusAlphaFragmentChangeAlphaSb.setOnSeekBarChangeListener(translucentListener)
barStatusAlphaFragmentAboutTv.text = mAlpha.toString()
@@ -60,7 +60,7 @@ class BarStatusAlphaFragment : BaseLazyFragment() {
LogUtils.d("doLazyBusiness() called")
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusAlphaSetTransparentBtn -> barStatusAlphaFragmentChangeAlphaSb.progress = 0
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt
index 1693898f2f..8f35f06e4f 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorActivity.kt
@@ -42,7 +42,7 @@ class BarStatusColorActivity : CommonBackActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusColorRandomColorBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barStatusColorRandomColorBtn)
updateStatusBar()
}
@@ -50,7 +50,7 @@ class BarStatusColorActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusColorRandomColorBtn -> {
mColor = ColorUtils.getRandomColor()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt
index cc735b33d9..985a8477d9 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusColorFragment.kt
@@ -36,7 +36,7 @@ class BarStatusColorFragment : BaseLazyFragment() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusColorFragmentRandomColorBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barStatusColorFragmentRandomColorBtn)
updateFakeStatusBar()
}
@@ -44,7 +44,7 @@ class BarStatusColorFragment : BaseLazyFragment() {
LogUtils.d("doLazyBusiness() called")
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusColorFragmentRandomColorBtn -> {
mColor = ColorUtils.getRandomColor()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt
index 54dde43699..b5b28bebfa 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomActivity.kt
@@ -43,5 +43,5 @@ class BarStatusCustomActivity : CommonBackActivity() {
BarUtils.setStatusBarColor(this, Color.TRANSPARENT).setBackgroundResource(R.drawable.bar_status_custom)
}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt
index d401db99b7..a3d4448598 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusCustomFragment.kt
@@ -39,5 +39,5 @@ class BarStatusCustomFragment : BaseLazyFragment() {
LogUtils.d("doLazyBusiness() called")
}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt
index e814effde6..91c1d820e5 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusDrawerActivity.kt
@@ -81,8 +81,10 @@ class BarStatusDrawerActivity : CommonDrawerActivity() {
barStatusDrawerAlphaCb.setOnCheckedChangeListener(mAlphaCheckedChangeListener)
barStatusDrawerFrontCb.setOnCheckedChangeListener(mFrontCheckedChangeListener)
barStatusDrawerChangeAlphaSb.setOnSeekBarChangeListener(mColorListener)
- barStatusDrawerRandomColorBtn.setOnClickListener(this)
- barStatusDrawerSetTransparentBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ barStatusDrawerRandomColorBtn,
+ barStatusDrawerSetTransparentBtn
+ )
barStatusDrawerChangeAlphaSb.visibility = View.GONE
barStatusDrawerSetTransparentBtn.visibility = View.GONE
@@ -92,7 +94,7 @@ class BarStatusDrawerActivity : CommonDrawerActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusDrawerRandomColorBtn -> {
mColor = ColorUtils.getRandomColor()
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 8195d31fc8..0d31fed8b8 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
@@ -103,5 +103,5 @@ class BarStatusFragmentActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt
index b7ef61c033..9adcef9281 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewActivity.kt
@@ -55,7 +55,7 @@ class BarStatusImageViewActivity : CommonBackActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusImageViewSetTransparentBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barStatusImageViewSetTransparentBtn)
barStatusImageViewChangeAlphaSb.setOnSeekBarChangeListener(translucentListener)
barStatusImageViewAboutTv.text = mAlpha.toString()
@@ -64,7 +64,7 @@ class BarStatusImageViewActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusImageViewSetTransparentBtn -> barStatusImageViewChangeAlphaSb.progress = 0
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt
index d710e1f68b..5eec54a33c 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/BarStatusImageViewFragment.kt
@@ -49,7 +49,7 @@ class BarStatusImageViewFragment : BaseLazyFragment() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- barStatusImageViewFragmentSetTransparentBtn.setOnClickListener(this)
+ applyDebouncingClickListener(barStatusImageViewFragmentSetTransparentBtn)
barStatusImageViewFragmentChangeAlphaSb.setOnSeekBarChangeListener(translucentListener)
barStatusImageViewFragmentAboutTv.text = mAlpha.toString()
@@ -60,7 +60,7 @@ class BarStatusImageViewFragment : BaseLazyFragment() {
LogUtils.d("doLazyBusiness() called")
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.barStatusImageViewSetTransparentBtn -> barStatusImageViewFragmentChangeAlphaSb.progress = 0
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt
index 4841a5a06d..57946c7248 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness/BrightnessActivity.kt
@@ -92,7 +92,7 @@ class BrightnessActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
private fun updateBrightness() {
SpanUtils.with(brightnessAboutTv)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
index f934d30e6f..fabe9bd795 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusActivity.kt
@@ -47,8 +47,10 @@ class BusActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- busStartRemoteBtn.setOnClickListener(this)
- busPostBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ busStartRemoteBtn,
+ busPostBtn
+ )
}
override fun doBusiness() {
@@ -59,7 +61,7 @@ class BusActivity : CommonTitleActivity() {
})
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.busStartRemoteBtn -> BusRemoteActivity.start(this)
R.id.busPostBtn -> {
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt
index 2f6d296bff..1ea0b50d3e 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus/BusRemoteActivity.kt
@@ -46,8 +46,10 @@ class BusRemoteActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- busRemotePostBtn.setOnClickListener(this)
- busRemotePost2MainBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ busRemotePostBtn,
+ busRemotePost2MainBtn
+ )
}
override fun doBusiness() {
@@ -58,7 +60,7 @@ class BusRemoteActivity : CommonTitleActivity() {
})
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.busRemotePostBtn -> BusUtils.post(BUS_KEY, BUNDLE)
R.id.busRemotePost2MainBtn -> BusUtils.post(BusActivity.BUS_KEY, BusActivity.BUNDLE)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt
index a0854d63e8..2e63b106cc 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clean/CleanActivity.kt
@@ -48,11 +48,13 @@ class CleanActivity : CommonTitleActivity() {
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
snackBarRootView = findViewById(android.R.id.content)
- cleanInternalCacheBtn.setOnClickListener(this)
- cleanInternalFilesBtn.setOnClickListener(this)
- cleanInternalDatabasesBtn.setOnClickListener(this)
- cleanInternalSpBtn.setOnClickListener(this)
- cleanExternalCacheBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ cleanInternalCacheBtn,
+ cleanInternalFilesBtn,
+ cleanInternalDatabasesBtn,
+ cleanInternalSpBtn,
+ cleanExternalCacheBtn
+ )
internalCachePath = cacheDir.path
internalFilesPath = filesDir.path
@@ -66,7 +68,7 @@ class CleanActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.cleanInternalCacheBtn -> showSnackbar(CleanUtils.cleanInternalCache(), internalCachePath)
R.id.cleanInternalFilesBtn -> showSnackbar(CleanUtils.cleanInternalFiles(), internalFilesPath)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt
new file mode 100644
index 0000000000..599c0d9fad
--- /dev/null
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click/ClickActivity.kt
@@ -0,0 +1,47 @@
+package com.blankj.utilcode.pkg.feature.click
+
+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.util.ClickUtils
+import kotlinx.android.synthetic.main.activity_click.*
+
+/**
+ * ```
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2016/09/29
+ * desc : demo about CleanUtils
+ * ```
+ */
+class ClickActivity : CommonTitleActivity() {
+
+ companion object {
+ fun start(context: Context) {
+ val starter = Intent(context, ClickActivity::class.java)
+ context.startActivity(starter)
+ }
+ }
+
+ override fun bindTitle(): CharSequence {
+ return getString(R.string.demo_click)
+ }
+
+ override fun initData(bundle: Bundle?) {}
+
+ override fun bindLayout(): Int {
+ return R.layout.activity_click
+ }
+
+ override fun initView(savedInstanceState: Bundle?, contentView: View?) {
+ ClickUtils.applyScale(clickScaleDefaultBtn)
+ ClickUtils.applyScale(arrayOf(clickScaleCustomBtn), floatArrayOf(-0.5f))
+ }
+
+ override fun doBusiness() {}
+
+ override fun onDebouncingClick(view: View) {}
+}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt
index 460272fbc6..f79b243e16 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device/DeviceActivity.kt
@@ -42,10 +42,11 @@ class DeviceActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- deviceShutdownBtn.setOnClickListener(this)
- deviceRebootBtn.setOnClickListener(this)
- deviceReboot2RecoveryBtn.setOnClickListener(this)
- deviceReboot2BootloaderBtn.setOnClickListener(this)
+ applyDebouncingClickListener(deviceShutdownBtn,
+ deviceRebootBtn,
+ deviceReboot2RecoveryBtn,
+ deviceReboot2BootloaderBtn
+ )
SpanUtils.with(deviceAboutTv)
.appendLine("isRoot: " + DeviceUtils.isDeviceRooted())
@@ -68,7 +69,7 @@ class DeviceActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.deviceShutdownBtn -> DeviceUtils.shutdown()
R.id.deviceRebootBtn -> DeviceUtils.reboot()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt
index 923f2f6bb7..dace171213 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/flashlight/FlashlightActivity.kt
@@ -62,7 +62,7 @@ class FlashlightActivity : CommonTitleActivity() {
updateAboutFlashlight()
}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
private fun updateAboutFlashlight() {
SpanUtils.with(flashlightAboutTv)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt
index 97a1cc3c1f..24b236a186 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/ChildFragment.kt
@@ -37,14 +37,16 @@ class ChildFragment : BaseLazyFragment() {
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
FragmentUtils.setBackgroundColor(this, ColorUtils.getRandomColor(false))
- fragmentChildShowStackBtn.setOnClickListener(this)
- fragmentChildPopBtn.setOnClickListener(this)
- fragmentChildRemoveBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ fragmentChildShowStackBtn,
+ fragmentChildPopBtn,
+ fragmentChildRemoveBtn
+ )
}
override fun doLazyBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.fragmentChildShowStackBtn -> DialogHelper.showFragmentDialog(
SpanUtils().appendLine("top: " + FragmentUtils.getSimpleName(FragmentUtils.getTop(fragmentManager!!)))
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..996f0b9b80 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
@@ -42,21 +42,22 @@ class ContainerFragment : BaseLazyFragment(), FragmentUtils.OnBackClickListener
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
FragmentUtils.setBackgroundColor(this, ColorUtils.getRandomColor(false))
- fragmentRootShowStackBtn.setOnClickListener(this)
- fragmentRootAddChildBtn.setOnClickListener(this)
- fragmentRootAddChildStackBtn.setOnClickListener(this)
-
- fragmentRootAddHideBtn.setOnClickListener(this)
- fragmentRootAddHideStackBtn.setOnClickListener(this)
- fragmentRootAddShowBtn.setOnClickListener(this)
- fragmentRootPopToRootBtn.setOnClickListener(this)
- fragmentRootHideShowBtn.setOnClickListener(this)
- fragmentRootReplaceBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ fragmentRootShowStackBtn,
+ fragmentRootAddChildBtn,
+ fragmentRootAddChildStackBtn,
+ fragmentRootAddHideBtn,
+ fragmentRootAddHideStackBtn,
+ fragmentRootAddShowBtn,
+ fragmentRootPopToRootBtn,
+ fragmentRootHideShowBtn,
+ fragmentRootReplaceBtn
+ )
}
override fun doLazyBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.fragmentRootShowStackBtn -> DialogHelper.showFragmentDialog(
SpanUtils().appendLine("top: " + FragmentUtils.getSimpleName(FragmentUtils.getTop(fragmentManager!!)))
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 e3671bc2a7..239fa8ffac 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
@@ -80,7 +80,7 @@ class FragmentActivity : CommonBackActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun onBackPressed() {
if (!FragmentUtils.dispatchBackPress(mFragments[curIndex])) {
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt
index 88049818f9..ef6426a9f9 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment/RootFragment.kt
@@ -45,7 +45,7 @@ class RootFragment : BaseLazyFragment(), FragmentUtils.OnBackClickListener {
override fun doLazyBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun onBackClick(): Boolean {
if (FragmentUtils.dispatchBackPress(childFragmentManager)) return true
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 47669da9cd..48b7200b72 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
@@ -102,7 +102,7 @@ class ImageActivity : CommonTaskActivity>() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
class ImageCell(@StringRes val resId: Int, private val image: Bitmap) : BaseCell(R.layout.item_image) {
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
index 1135adbc8e..e43bcc1585 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/keyboard/KeyboardActivity.kt
@@ -40,10 +40,12 @@ class KeyboardActivity : CommonTitleActivity() {
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
KeyboardUtils.fixAndroidBug5497(this)
- keyboardHideSoftInputBtn.setOnClickListener(this)
- keyboardShowSoftInputBtn.setOnClickListener(this)
- keyboardToggleSoftInputBtn.setOnClickListener(this)
- keyboardShowDialogBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ keyboardHideSoftInputBtn,
+ keyboardShowSoftInputBtn,
+ keyboardToggleSoftInputBtn,
+ keyboardShowDialogBtn
+ )
KeyboardUtils.registerSoftInputChangedListener(this) { height ->
SpanUtils.with(keyboardAboutTv)
@@ -55,7 +57,7 @@ class KeyboardActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.keyboardHideSoftInputBtn -> KeyboardUtils.hideSoftInput(this)
R.id.keyboardShowSoftInputBtn -> KeyboardUtils.showSoftInput(keyboardEt)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt
index 7164477208..27c0bcaed7 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log/LogActivity.kt
@@ -153,27 +153,29 @@ class LogActivity : CommonTitleActivity(),
logFileFilterCb.setOnCheckedChangeListener(this)
logFileFilterCb.text = String.format("FileFilter: %s", mConfig.fileFilter)
- logNoTagBtn.setOnClickListener(this)
- logWithTagBtn.setOnClickListener(this)
- logInNewThreadBtn.setOnClickListener(this)
- logNullBtn.setOnClickListener(this)
- logManyParamsBtn.setOnClickListener(this)
- logLongBtn.setOnClickListener(this)
- logFileBtn.setOnClickListener(this)
- logJsonBtn.setOnClickListener(this)
- logXmlBtn.setOnClickListener(this)
- logArrayBtn.setOnClickListener(this)
- logThrowableBtn.setOnClickListener(this)
- logBundleBtn.setOnClickListener(this)
- logIntentBtn.setOnClickListener(this)
- logArrayListBtn.setOnClickListener(this)
- logMapBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ logNoTagBtn,
+ logWithTagBtn,
+ logInNewThreadBtn,
+ logNullBtn,
+ logManyParamsBtn,
+ logLongBtn,
+ logFileBtn,
+ logJsonBtn,
+ logXmlBtn,
+ logArrayBtn,
+ logThrowableBtn,
+ logBundleBtn,
+ logIntentBtn,
+ logArrayListBtn,
+ logMapBtn
+ )
updateAboutLog()
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.logNoTagBtn -> {
LogUtils.v("verbose")
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt
index 51bee6198a..9f4ea2cb55 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/metaData/MetaDataActivity.kt
@@ -46,5 +46,5 @@ class MetaDataActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt
index 413e5e9a50..790a6babb4 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network/NetworkActivity.kt
@@ -47,7 +47,7 @@ class NetworkActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- networkOpenWirelessSettingsBtn.setOnClickListener(this)
+ applyDebouncingClickListener(networkOpenWirelessSettingsBtn)
if (AppUtils.isAppSystem()) {
networkMobileDataEnabledCb.setOnCheckedChangeListener { buttonView, isChecked ->
@@ -73,7 +73,7 @@ class NetworkActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.networkOpenWirelessSettingsBtn -> NetworkUtils.openWirelessSettings()
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt
index 0b86b61876..e9498963e1 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/path/PathActivity.kt
@@ -83,5 +83,5 @@ class PathActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt
index 3c71325099..c084f28aa0 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission/PermissionActivity.kt
@@ -43,12 +43,14 @@ class PermissionActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- permissionOpenAppSettingsBtn.setOnClickListener(this)
- permissionRequestCalendarBtn.setOnClickListener(this)
- permissionRequestRecordAudioBtn.setOnClickListener(this)
- permissionRequestCalendarAndRecordAudioBtn.setOnClickListener(this)
- permissionRequestWriteSettings.setOnClickListener(this)
- permissionRequestDrawOverlays.setOnClickListener(this)
+ applyDebouncingClickListener(
+ permissionOpenAppSettingsBtn,
+ permissionRequestCalendarBtn,
+ permissionRequestRecordAudioBtn,
+ permissionRequestCalendarAndRecordAudioBtn,
+ permissionRequestWriteSettings,
+ permissionRequestDrawOverlays
+ )
val sb = StringBuilder()
for (s in PermissionUtils.getPermissions()) {
@@ -64,7 +66,7 @@ class PermissionActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.permissionOpenAppSettingsBtn -> PermissionUtils.launchAppDetailsSettings()
R.id.permissionRequestCalendarBtn -> requestCalendar()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt
index 95d2454928..67b6281abe 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone/PhoneActivity.kt
@@ -60,15 +60,17 @@ class PhoneActivity : CommonTitleActivity() {
.append("getPhoneStatus: " + PhoneUtils.getPhoneStatus())
.create()
- phoneDialBtn.setOnClickListener(this)
- phoneCallBtn.setOnClickListener(this)
- phoneSendSmsBtn.setOnClickListener(this)
- phoneSendSmsSilentBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ phoneDialBtn,
+ phoneCallBtn,
+ phoneSendSmsBtn,
+ phoneSendSmsSilentBtn
+ )
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.phoneDialBtn -> PhoneUtils.dial("10000")
R.id.phoneCallBtn -> PhoneUtils.call("10000")
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt
index 04fda17cf3..3ed48daacc 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/process/ProcessActivity.kt
@@ -38,7 +38,7 @@ class ProcessActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- processKillAllBackgroundProcesses.setOnClickListener(this)
+ applyDebouncingClickListener(processKillAllBackgroundProcesses)
val set = ProcessUtils.getAllBackgroundProcesses()
SpanUtils.with(processAboutTv)
.appendLine("getForegroundProcessName: " + ProcessUtils.getForegroundProcessName()!!)
@@ -51,7 +51,7 @@ class ProcessActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.processKillAllBackgroundProcesses -> {
val bgSet = ProcessUtils.getAllBackgroundProcesses()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt
index 22e5c012ae..f222f2ae12 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect/ReflectActivity.kt
@@ -46,7 +46,7 @@ class ReflectActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun onDestroy() {
ReflectUtils.reflect(TestPrivateStaticFinal::class.java).field("I1", 1)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt
index 46c66a02cb..b64cccb231 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/resource/ResourceActivity.kt
@@ -41,8 +41,10 @@ class ResourceActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- resourceCopyFileFromAssets.setOnClickListener(this)
- resourceCopyFileFromRaw.setOnClickListener(this)
+ applyDebouncingClickListener(
+ resourceCopyFileFromAssets,
+ resourceCopyFileFromRaw
+ )
SpanUtils.with(resourceAboutTv)
.appendLine("readAssets2String: " + ResourceUtils.readAssets2String("test/test.txt"))
@@ -53,7 +55,7 @@ class ResourceActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.resourceCopyFileFromAssets -> ResourceUtils.copyFileFromAssets("test", Config.CACHE_PATH + "assets/test")
R.id.resourceCopyFileFromRaw -> ResourceUtils.copyFileFromRaw(R.raw.test, Config.CACHE_PATH + "raw/test.txt")
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt
index c74896dc76..8f76c87e48 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/rom/RomActivity.kt
@@ -45,5 +45,5 @@ class RomActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt
index ee18438165..cd66f17371 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen/ScreenActivity.kt
@@ -53,19 +53,21 @@ class ScreenActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- screenFullscreenBtn.setOnClickListener(this);
- screenNonFullscreenBtn.setOnClickListener(this);
- screenToggleFullscreenBtn.setOnClickListener(this);
- screenLandscapeBtn.setOnClickListener(this);
- screenPortraitBtn.setOnClickListener(this);
- screenScreenshotBtn.setOnClickListener(this);
- screenSetSleepDurationBtn.setOnClickListener(this);
+ applyDebouncingClickListener(
+ screenFullscreenBtn,
+ screenNonFullscreenBtn,
+ screenToggleFullscreenBtn,
+ screenLandscapeBtn,
+ screenPortraitBtn,
+ screenScreenshotBtn,
+ screenSetSleepDurationBtn
+ )
updateAboutScreen();
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.screenFullscreenBtn -> {
ScreenUtils.setFullScreen(this)
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt
index cd1cea2b0a..a332e1f85e 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard/SDCardActivity.kt
@@ -47,5 +47,5 @@ class SDCardActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
}
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 bede1a877d..3f8a52fad2 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
@@ -48,23 +48,25 @@ class SnackbarActivity : CommonTitleActivity() {
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
snackBarRootView = findViewById(android.R.id.content)
- snackbarShowShortBtn.setOnClickListener(this)
- snackbarShowShortWithActionBtn.setOnClickListener(this)
- snackbarShowLongBtn.setOnClickListener(this)
- snackbarShowLongWithActionBtn.setOnClickListener(this)
- snackbarShowIndefiniteBtn.setOnClickListener(this)
- snackbarShowIndefiniteWithActionBtn.setOnClickListener(this)
- snackbarAddViewBtn.setOnClickListener(this)
- snackbarAddViewWithActionBtn.setOnClickListener(this)
- snackbarShowSuccessBtn.setOnClickListener(this)
- snackbarShowWarningBtn.setOnClickListener(this)
- snackbarShowErrorBtn.setOnClickListener(this)
- snackbarDismissBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ snackbarShowShortBtn,
+ snackbarShowShortWithActionBtn,
+ snackbarShowLongBtn,
+ snackbarShowLongWithActionBtn,
+ snackbarShowIndefiniteBtn,
+ snackbarShowIndefiniteWithActionBtn,
+ snackbarAddViewBtn,
+ snackbarAddViewWithActionBtn,
+ snackbarShowSuccessBtn,
+ snackbarShowWarningBtn,
+ snackbarShowErrorBtn,
+ snackbarDismissBtn
+ )
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.snackbarShowShortBtn -> SnackbarUtils.with(snackBarRootView)
.setMessage(getMsg(R.string.snackbar_short))
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt
index ebafaf005c..a078996125 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/spStatic/SPStaticActivity.kt
@@ -49,19 +49,21 @@ class SPStaticActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- spStaticPutStringBtn.setOnClickListener(this)
- spStaticPutIntBtn.setOnClickListener(this)
- spStaticPutLongBtn.setOnClickListener(this)
- spPutFloatBtn.setOnClickListener(this)
- spStaticPutBooleanBtn.setOnClickListener(this)
- spStaticClearBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ spStaticPutStringBtn,
+ spStaticPutIntBtn,
+ spStaticPutLongBtn,
+ spPutFloatBtn,
+ spStaticPutBooleanBtn,
+ spStaticClearBtn
+ )
}
override fun doBusiness() {
updateAboutSp()
}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
when (view.id) {
R.id.spStaticPutStringBtn -> SPStaticUtils.put("STRING", "string")
R.id.spStaticPutIntBtn -> SPStaticUtils.put("INT", 21)
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 3200097c4e..3f3738e450 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
@@ -6,7 +6,6 @@ import android.content.Intent
import android.graphics.*
import android.os.Bundle
import android.support.annotation.ColorInt
-import android.text.Layout
import android.text.SpannableStringBuilder
import android.text.TextPaint
import android.text.style.CharacterStyle
@@ -84,78 +83,81 @@ class SpanActivity : CommonTitleActivity() {
// initAnimSpan();
// startAnim();
- SpanUtils.with(spanAboutTv)
- .appendLine("SpanUtils").setBackgroundColor(Color.LTGRAY).setBold().setForegroundColor(Color.YELLOW).setHorizontalAlign(Layout.Alignment.ALIGN_CENTER)
- .appendLine("前景色").setForegroundColor(Color.GREEN)
- .appendLine("背景色").setBackgroundColor(Color.LTGRAY)
- .appendLine("行高居中对齐").setLineHeight(2 * lineHeight, SpanUtils.ALIGN_CENTER).setBackgroundColor(Color.LTGRAY)
- .appendLine("行高底部对齐").setLineHeight(2 * lineHeight, SpanUtils.ALIGN_BOTTOM).setBackgroundColor(Color.GREEN)
- .appendLine("测试段落缩,首行缩进两字,其他行不缩进").setLeadingMargin(textSize.toInt() * 2, 10).setBackgroundColor(Color.GREEN)
- .appendLine("测试引用,后面的字是为了凑到两行的效果").setQuoteColor(Color.GREEN, 10, 10).setBackgroundColor(Color.LTGRAY)
- .appendLine("测试列表项,后面的字是为了凑到两行的效果").setBullet(Color.GREEN, 20, 10).setBackgroundColor(Color.LTGRAY).setBackgroundColor(Color.GREEN)
- .appendLine("32dp 字体").setFontSize(32, true)
- .appendLine("2 倍字体").setFontProportion(2f)
- .appendLine("横向 2 倍字体").setFontXProportion(1.5f)
- .appendLine("删除线").setStrikethrough()
- .appendLine("下划线").setUnderline()
- .append("测试").appendLine("上标").setSuperscript()
- .append("测试").appendLine("下标").setSubscript()
- .appendLine("粗体").setBold()
- .appendLine("斜体").setItalic()
- .appendLine("粗斜体").setBoldItalic()
- .appendLine("monospace 字体").setFontFamily("monospace")
- .appendLine("自定义字体").setTypeface(Typeface.createFromAsset(assets, "fonts/dnmbhs.ttf"))
- .appendLine("相反对齐").setHorizontalAlign(Layout.Alignment.ALIGN_OPPOSITE)
- .appendLine("居中对齐").setHorizontalAlign(Layout.Alignment.ALIGN_CENTER)
- .appendLine("正常对齐").setHorizontalAlign(Layout.Alignment.ALIGN_NORMAL)
- .append("测试").appendLine("点击事件").setClickSpan(clickableSpan)
- .append("测试").appendLine("Url").setUrl("https://github.com/Blankj/AndroidUtilCode")
- .append("测试").appendLine("模糊").setBlur(3f, BlurMaskFilter.Blur.NORMAL)
- .appendLine("颜色渐变").setShader(LinearGradient(0f, 0f, 64f * density * 4f, 0f, resources.getIntArray(R.array.rainbow), null, Shader.TileMode.REPEAT)).setFontSize(64, true)
- .appendLine("图片着色").setFontSize(64, true).setShader(BitmapShader(BitmapFactory.decodeResource(resources, R.drawable.span_cheetah), Shader.TileMode.REPEAT, Shader.TileMode.REPEAT))
- .appendLine("阴影效果").setFontSize(64, true).setBackgroundColor(Color.BLACK).setShadow(24f, 8f, 8f, Color.WHITE)
-
- .append("小图").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_TOP)
- .append("顶部").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_CENTER)
- .append("居中").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_BASELINE)
- .append("底部").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_BOTTOM)
- .appendLine("对齐").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_TOP)
- .append("大图").setBackgroundColor(Color.LTGRAY)
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_TOP)
- .append("顶部").setBackgroundColor(Color.LTGRAY)
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_TOP)
- .appendLine("对齐").setBackgroundColor(Color.LTGRAY)
-
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_CENTER)
- .append("大图").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_CENTER)
- .append("居中").setBackgroundColor(Color.GREEN)
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_CENTER)
- .appendLine("对齐").setBackgroundColor(Color.GREEN)
-
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_BOTTOM)
- .append("大图").setBackgroundColor(Color.LTGRAY)
- .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_BOTTOM)
- .append("底部").setBackgroundColor(Color.LTGRAY)
+// SpanUtils.with(spanAboutTv)
+// .appendLine("SpanUtils").setBackgroundColor(Color.LTGRAY).setBold().setForegroundColor(Color.YELLOW).setHorizontalAlign(Layout.Alignment.ALIGN_CENTER)
+// .appendLine("前景色").setForegroundColor(Color.GREEN)
+// .appendLine("背景色").setBackgroundColor(Color.LTGRAY)
+// .appendLine("行高居中对齐").setLineHeight(2 * lineHeight, SpanUtils.ALIGN_CENTER).setBackgroundColor(Color.LTGRAY)
+// .appendLine("行高底部对齐").setLineHeight(2 * lineHeight, SpanUtils.ALIGN_BOTTOM).setBackgroundColor(Color.GREEN)
+// .appendLine("测试段落缩,首行缩进两字,其他行不缩进").setLeadingMargin(textSize.toInt() * 2, 10).setBackgroundColor(Color.GREEN)
+// .appendLine("测试引用,后面的字是为了凑到两行的效果").setQuoteColor(Color.GREEN, 10, 10).setBackgroundColor(Color.LTGRAY)
+// .appendLine("测试列表项,后面的字是为了凑到两行的效果").setBullet(Color.GREEN, 20, 10).setBackgroundColor(Color.LTGRAY).setBackgroundColor(Color.GREEN)
+// .appendLine("32dp 字体").setFontSize(32, true)
+// .appendLine("2 倍字体").setFontProportion(2f)
+// .appendLine("横向 2 倍字体").setFontXProportion(1.5f)
+// .appendLine("删除线").setStrikethrough()
+// .appendLine("下划线").setUnderline()
+// .append("测试").appendLine("上标").setSuperscript()
+// .append("测试").appendLine("下标").setSubscript()
+// .appendLine("粗体").setBold()
+// .appendLine("斜体").setItalic()
+// .appendLine("粗斜体").setBoldItalic()
+// .appendLine("monospace 字体").setFontFamily("monospace")
+// .appendLine("自定义字体").setTypeface(Typeface.createFromAsset(assets, "fonts/dnmbhs.ttf"))
+// .appendLine("相反对齐").setHorizontalAlign(Layout.Alignment.ALIGN_OPPOSITE)
+// .appendLine("居中对齐").setHorizontalAlign(Layout.Alignment.ALIGN_CENTER)
+// .appendLine("正常对齐").setHorizontalAlign(Layout.Alignment.ALIGN_NORMAL)
+// .append("测试").appendLine("点击事件").setClickSpan(clickableSpan)
+// .append("测试").appendLine("Url").setUrl("https://github.com/Blankj/AndroidUtilCode")
+// .append("测试").appendLine("模糊").setBlur(3f, BlurMaskFilter.Blur.NORMAL)
+// .appendLine("颜色渐变").setShader(LinearGradient(0f, 0f, 64f * density * 4f, 0f, resources.getIntArray(R.array.rainbow), null, Shader.TileMode.REPEAT)).setFontSize(64, true)
+// .appendLine("图片着色").setFontSize(64, true).setShader(BitmapShader(BitmapFactory.decodeResource(resources, R.drawable.span_cheetah), Shader.TileMode.REPEAT, Shader.TileMode.REPEAT))
+// .appendLine("阴影效果").setFontSize(64, true).setBackgroundColor(Color.BLACK).setShadow(24f, 8f, 8f, Color.WHITE)
+//
+// .append("小图").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_TOP)
+// .append("顶部").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_CENTER)
+// .append("居中").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_BASELINE)
+// .append("底部").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_low, SpanUtils.ALIGN_BOTTOM)
+// .appendLine("对齐").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_TOP)
+// .append("大图").setBackgroundColor(Color.LTGRAY)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_TOP)
+// .append("顶部").setBackgroundColor(Color.LTGRAY)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_TOP)
+// .appendLine("对齐").setBackgroundColor(Color.LTGRAY)
+//
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_CENTER)
+// .append("大图").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_CENTER)
+// .append("居中").setBackgroundColor(Color.GREEN)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_CENTER)
+// .appendLine("对齐").setBackgroundColor(Color.GREEN)
+//
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_BOTTOM)
+// .append("大图").setBackgroundColor(Color.LTGRAY)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_BOTTOM)
+// .append("底部").setBackgroundColor(Color.LTGRAY)
+// .appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_BOTTOM)
+// .appendLine("对齐").setBackgroundColor(Color.LTGRAY)
+//
+// .append("测试空格").appendSpace(30, Color.LTGRAY).appendSpace(50, Color.GREEN).appendSpace(100).appendSpace(30, Color.LTGRAY).appendSpace(50, Color.GREEN)
+// .create()
+
+
+ var create = SpanUtils()
.appendImage(R.drawable.span_shape_block_high, SpanUtils.ALIGN_BOTTOM)
- .appendLine("对齐").setBackgroundColor(Color.LTGRAY)
-
- .append("测试空格").appendSpace(30, Color.LTGRAY).appendSpace(50, Color.GREEN).appendSpace(100).appendSpace(30, Color.LTGRAY).appendSpace(50, Color.GREEN)
.create()
-
-
-// SpanUtils.with(aboutSpanTv)
-// .append("行高顶部对齐").setLineHeight(3 * lineHeight, SpanUtils.ALIGN_TOP).setFontSize(20).setBackgroundColor(Color.GREEN)
-// .append("行高").setLineHeight(3 * lineHeight, SpanUtils.ALIGN_CENTER).setFontSize(40).setBackgroundColor(Color.LTGRAY)
-// .appendLine("行高顶部").setLineHeight(3 * lineHeight, SpanUtils.ALIGN_BOTTOM).setFontSize(60).setBackgroundColor(Color.LTGRAY)
-// .append("行高").setFontSize(100).setBackgroundColor(Color.GREEN)
-// .append("行高").setFontSize(20).setBackgroundColor(Color.LTGRAY).setUnderline().setVerticalAlign(SpanUtils.ALIGN_CENTER)
-// .create();
+ SpanUtils.with(spanAboutTv)
+ .append(create)
+ .setClickSpan(object: ClickableSpan() {
+ override fun onClick(widget: View?) {
+ ToastUtils.showLong("haha")
+ }
+ }).create()
}
private fun initAnimSpan() {
@@ -225,7 +227,7 @@ class SpanActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
// override fun onDestroy() {
// if (valueAnimator.isRunning) {
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 c23c6a7699..0bc94a1910 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
@@ -42,21 +42,23 @@ class ToastActivity : CommonTitleActivity() {
}
override fun initView(savedInstanceState: Bundle?, contentView: View?) {
- toastShowShortBtn.setOnClickListener(this)
- toastShowLongBtn.setOnClickListener(this)
- toastShowGreenFontBtn.setOnClickListener(this)
- toastShowBgColorBtn.setOnClickListener(this)
- toastShowBgResourceBtn.setOnClickListener(this)
- toastShowSpanBtn.setOnClickListener(this)
- toastShowCustomViewBtn.setOnClickListener(this)
- toastShowMiddleBtn.setOnClickListener(this)
- toastCancelBtn.setOnClickListener(this)
- toastShowToastDialogBtn.setOnClickListener(this)
+ applyDebouncingClickListener(
+ toastShowShortBtn,
+ toastShowLongBtn,
+ toastShowGreenFontBtn,
+ toastShowBgColorBtn,
+ toastShowBgResourceBtn,
+ toastShowSpanBtn,
+ toastShowCustomViewBtn,
+ toastShowMiddleBtn,
+ toastCancelBtn,
+ toastShowToastDialogBtn
+ )
}
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {
+ override fun onDebouncingClick(view: View) {
resetToast()
when (view.id) {
R.id.toastShowShortBtn -> Thread(Runnable { ToastUtils.showShort(R.string.toast_short) }).start()
diff --git a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt
index 79ac5b991b..f2c9366b2b 100644
--- a/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt
+++ b/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt
@@ -46,7 +46,7 @@ class VibrateActivity : CommonTitleActivity() {
override fun doBusiness() {}
- override fun onWidgetClick(view: View) {}
+ override fun onDebouncingClick(view: View) {}
override fun onDestroy() {
super.onDestroy()
diff --git a/utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml b/utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml
new file mode 100644
index 0000000000..57b8d7e20d
--- /dev/null
+++ b/utilcode/pkg/src/main/res/drawable/click_shape_round_rect.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_click.xml b/utilcode/pkg/src/main/res/layout/activity_click.xml
new file mode 100644
index 0000000000..f0a4d23925
--- /dev/null
+++ b/utilcode/pkg/src/main/res/layout/activity_click.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/utilcode/pkg/src/main/res/layout/activity_util_core.xml b/utilcode/pkg/src/main/res/layout/activity_util_core.xml
index 76f34bca40..b153b38d6c 100644
--- a/utilcode/pkg/src/main/res/layout/activity_util_core.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_util_core.xml
@@ -10,213 +10,220 @@
tools:context=".feature.CoreUtilActivity">
+
+
diff --git a/utilcode/pkg/src/main/res/values/strings.xml b/utilcode/pkg/src/main/res/values/strings.xml
index b386e01c09..4f264a83f1 100644
--- a/utilcode/pkg/src/main/res/values/strings.xml
+++ b/utilcode/pkg/src/main/res/values/strings.xml
@@ -7,6 +7,7 @@
BrightnessUtils Demo
BlurUtils Demo
CleanUtils Demo
+ ClickUtils Demo
BusUtils Demo
CrashUtils Demo
DeviceUtils Demo
@@ -119,6 +120,10 @@
Clean Internal SP
Clean External Cache
+
+ Click Scale Default
+ Click Scale Custom
+
Start Remote
Post
@@ -244,10 +249,6 @@
Screenshot
Set Sleep Duration
Test Adapt Screen
- System Toast
- Util Toast
- System Dialog
- System Dialog Without Adapt
Show Short Snackbar
From 3bc96042d75d8c355dd9a386a5464c63f8babf36 Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Wed, 19 Jun 2019 20:02:33 +0800
Subject: [PATCH 006/194] see 06/19 log
---
CHANGELOG.md | 2 ++
README-CN.md | 2 +-
README.md | 2 +-
utilcode/README-CN.md | 4 ++--
utilcode/README-STATIC-BUS.md | 2 +-
utilcode/README.md | 4 ++--
.../lib/src/main/java/com/blankj/utilcode/util/UriUtils.java | 2 +-
7 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3dedf5d528..6a542c43fc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,5 @@
+* `19/06/19` [fix] UriUtils. Publish v1.24.3.
+* `19/06/18` [add] ClickUtils, ViewUtils.
* `19/06/07` [fix] LogUtils file name contains ':'. Publish v1.24.2.
* `19/06/06` [fix] LogUtils write to file. Publish v1.24.1.
* `19/06/03` [fix] Refactoring framework. Publish v1.24.0.
diff --git a/README-CN.md b/README-CN.md
index 1bda0b968b..8d6bd9c484 100644
--- a/README-CN.md
+++ b/README-CN.md
@@ -41,7 +41,7 @@
[logo]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/logo.png
-[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.2-brightgreen.svg
+[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.3-brightgreen.svg
[auc]: https://github.com/Blankj/AndroidUtilCode
[apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
diff --git a/README.md b/README.md
index af2b8e95ff..446ead6602 100644
--- a/README.md
+++ b/README.md
@@ -41,7 +41,7 @@ If this project helps you a lot and you want to support the project's developmen
[logo]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/logo.png
-[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.2-brightgreen.svg
+[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.3-brightgreen.svg
[auc]: https://github.com/Blankj/AndroidUtilCode
[apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
diff --git a/utilcode/README-CN.md b/utilcode/README-CN.md
index 8db3bc857b..19e06e6002 100644
--- a/utilcode/README-CN.md
+++ b/utilcode/README-CN.md
@@ -2,10 +2,10 @@
Gradle:
```groovy
-implementation 'com.blankj:utilcode:1.24.2'
+implementation 'com.blankj:utilcode:1.24.3'
// if u use AndroidX, use the following
-implementation 'com.blankj:utilcodex:1.24.2'
+implementation 'com.blankj:utilcodex:1.24.3'
```
diff --git a/utilcode/README-STATIC-BUS.md b/utilcode/README-STATIC-BUS.md
index 2d3ac30150..1e60cae8ff 100644
--- a/utilcode/README-STATIC-BUS.md
+++ b/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.2"
+api "com.blankj:utilcode:1.24.3"
```
比如 module0 中存在的 `Module0Activity.java`,我们通常都是在它内部写一个 `start` 函数来启动它,现在我们给它添加 `@BusUtils.Subscribe` 注解,并给注解的 `name` 赋唯一值,要注意,函数务必要 `public static` 哦:
diff --git a/utilcode/README.md b/utilcode/README.md
index 2ba7451dfa..2100be85e8 100644
--- a/utilcode/README.md
+++ b/utilcode/README.md
@@ -2,10 +2,10 @@
Gradle:
```groovy
-implementation 'com.blankj:utilcode:1.24.2'
+implementation 'com.blankj:utilcode:1.24.3'
// if u use AndroidX, use the following
-implementation 'com.blankj:utilcodex:1.24.2'
+implementation 'com.blankj:utilcodex:1.24.3'
```
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 060d2ac92e..84571c5b18 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
@@ -56,7 +56,7 @@ public static File uri2File(@NonNull final Uri uri) {
String scheme = uri.getScheme();
String path = uri.getPath();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N
- && path != null && path.startsWith("/external")) {
+ && path != null && path.startsWith("/external/")) {
return new File(Environment.getExternalStorageDirectory().getAbsolutePath()
+ path.replace("/external", ""));
}
From 4625d7e82d343e4135617bfdc92661fae842d65d Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Thu, 20 Jun 2019 15:18:55 +0800
Subject: [PATCH 007/194] see 06/20 log
---
CHANGELOG.md | 1 +
README-CN.md | 2 +-
README.md | 2 +-
gradle/config/config.gradle | 4 +-
.../com/blankj/lib/base/rv/BaseAdapter.java | 17 ++-------
.../java/com/blankj/lib/base/rv/BaseCell.java | 14 +++++++
utilcode/README-CN.md | 11 +-----
utilcode/README-STATIC-BUS.md | 2 +-
utilcode/README.md | 11 +-----
utilcode/lib/src/main/AndroidManifest.xml | 6 +--
.../src/main/res/layout/activity_image.xml | 37 ++++++++++++++++---
11 files changed, 60 insertions(+), 47 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6a542c43fc..e07ea6a166 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,4 @@
+* `19/06/20` [fix] BusUtils' permission. Publish v1.24.4.
* `19/06/19` [fix] UriUtils. Publish v1.24.3.
* `19/06/18` [add] ClickUtils, ViewUtils.
* `19/06/07` [fix] LogUtils file name contains ':'. Publish v1.24.2.
diff --git a/README-CN.md b/README-CN.md
index 8d6bd9c484..e000f59551 100644
--- a/README-CN.md
+++ b/README-CN.md
@@ -41,7 +41,7 @@
[logo]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/logo.png
-[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.3-brightgreen.svg
+[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.4-brightgreen.svg
[auc]: https://github.com/Blankj/AndroidUtilCode
[apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
diff --git a/README.md b/README.md
index 446ead6602..edc0ef5941 100644
--- a/README.md
+++ b/README.md
@@ -41,7 +41,7 @@ If this project helps you a lot and you want to support the project's developmen
[logo]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/logo.png
-[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.3-brightgreen.svg
+[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.24.4-brightgreen.svg
[auc]: https://github.com/Blankj/AndroidUtilCode
[apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
diff --git a/gradle/config/config.gradle b/gradle/config/config.gradle
index 8ce373681b..8c37ce01ba 100644
--- a/gradle/config/config.gradle
+++ b/gradle/config/config.gradle
@@ -8,8 +8,8 @@ gradle.ext {
compileSdkVersion = 27
minSdkVersion = 14
targetSdkVersion = 27
- versionCode = 1_024_003
- versionName = '1.24.3'// E.g. 1.9.72 => 1,009,072
+ versionCode = 1_024_004
+ versionName = '1.24.4'// E.g. 1.9.72 => 1,009,072
// lib version
kotlin_version = '1.3.10'
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 541e041a67..619d84e5ae 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
@@ -4,7 +4,6 @@
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
-import android.view.View;
import android.view.ViewGroup;
import java.util.List;
@@ -39,19 +38,8 @@ public final int getItemViewType(int position) {
@NonNull
@Override
public BaseViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
- if (mContext == null) {
- mContext = parent.getContext();
- mInflater = LayoutInflater.from(mContext);
- }
- int layoutByType = BaseCell.getLayoutByType(viewType);
- if (layoutByType != -1) {
- return new BaseViewHolder(mInflater.inflate(layoutByType, parent, false));
- }
- View viewByType = BaseCell.getViewByType(viewType);
- if (viewByType != null) {
- return new BaseViewHolder(viewByType);
- }
- throw new RuntimeException("onCreateViewHolder: get holder from view type failed.");
+ BaseViewHolder baseViewHolder = Cell.onCreateViewHolder(parent, viewType);
+ return baseViewHolder;
}
@Override
@@ -61,6 +49,7 @@ public final void onBindViewHolder(@NonNull BaseViewHolder holder, int position)
@Override
public int getItemCount() {
+ if (mData == null) return 0;
return mData.size();
}
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 fae208d451..a068edc22d 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
@@ -3,7 +3,9 @@
import android.support.annotation.NonNull;
import android.util.SparseArray;
import android.util.SparseIntArray;
+import android.view.LayoutInflater;
import android.view.View;
+import android.view.ViewGroup;
/**
*
@@ -42,4 +44,16 @@ public BaseCell(View view) {
viewType = getClass().hashCode();
VIEW_SPARSE_ARRAY.put(viewType, view);
}
+
+ public static BaseViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+ int layoutByType = getLayoutByType(viewType);
+ if (layoutByType != -1) {
+ return new BaseViewHolder(LayoutInflater.from(parent.getContext()).inflate(layoutByType, parent, false));
+ }
+ View viewByType = getViewByType(viewType);
+ if (viewByType != null) {
+ return new BaseViewHolder(viewByType);
+ }
+ throw new RuntimeException("onCreateViewHolder: get holder from view type failed.");
+ }
}
diff --git a/utilcode/README-CN.md b/utilcode/README-CN.md
index 19e06e6002..71f55f9f5b 100644
--- a/utilcode/README-CN.md
+++ b/utilcode/README-CN.md
@@ -2,10 +2,10 @@
Gradle:
```groovy
-implementation 'com.blankj:utilcode:1.24.3'
+implementation 'com.blankj:utilcode:1.24.4'
// if u use AndroidX, use the following
-implementation 'com.blankj:utilcodex:1.24.3'
+implementation 'com.blankj:utilcodex:1.24.4'
```
@@ -41,11 +41,6 @@ pt2Px : pt 转 px
px2Pt : px 转 pt
```
-* ### AntiShake 相关 -> [AntiShakeUtils.java][antiShake.java]
-```
-isValid: 是否有效
-```
-
* ### App 相关 -> [AppUtils.java][app.java] -> [Demo][app.demo]
```
registerAppStatusChangedListener : 注册 App 前后台切换监听器
@@ -976,8 +971,6 @@ getComments : 获取压缩文件中的注释链表
[adaptScreen.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
[adaptScreen.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
-[antiShake.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
-
[app.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
[app.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
diff --git a/utilcode/README-STATIC-BUS.md b/utilcode/README-STATIC-BUS.md
index 1e60cae8ff..5fd4cec579 100644
--- a/utilcode/README-STATIC-BUS.md
+++ b/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.3"
+api "com.blankj:utilcode:1.24.4"
```
比如 module0 中存在的 `Module0Activity.java`,我们通常都是在它内部写一个 `start` 函数来启动它,现在我们给它添加 `@BusUtils.Subscribe` 注解,并给注解的 `name` 赋唯一值,要注意,函数务必要 `public static` 哦:
diff --git a/utilcode/README.md b/utilcode/README.md
index 2100be85e8..a751411d11 100644
--- a/utilcode/README.md
+++ b/utilcode/README.md
@@ -2,10 +2,10 @@
Gradle:
```groovy
-implementation 'com.blankj:utilcode:1.24.3'
+implementation 'com.blankj:utilcode:1.24.4'
// if u use AndroidX, use the following
-implementation 'com.blankj:utilcodex:1.24.3'
+implementation 'com.blankj:utilcodex:1.24.4'
```
@@ -41,11 +41,6 @@ pt2Px
px2Pt
```
-* ### About AntiShake -> [AntiShakeUtils.java][antiShake.java]
-```
-isValid
-```
-
* ### About App -> [AppUtils.java][app.java] -> [Demo][app.demo]
```
registerAppStatusChangedListener
@@ -976,8 +971,6 @@ getComments
[adaptScreen.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/lib/src/main/java/com/blankj/utilcode/util/AdaptScreenUtils.java
[adaptScreen.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen/AdaptScreenActivity.kt
-[antiShake.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/lib/src/main/java/com/blankj/utilcode/util/AntiShakeUtils.java
-
[app.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java
[app.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app/AppActivity.kt
diff --git a/utilcode/lib/src/main/AndroidManifest.xml b/utilcode/lib/src/main/AndroidManifest.xml
index 64011d907e..40a996f570 100644
--- a/utilcode/lib/src/main/AndroidManifest.xml
+++ b/utilcode/lib/src/main/AndroidManifest.xml
@@ -1,8 +1,6 @@
-
-
-
+
diff --git a/utilcode/pkg/src/main/res/layout/activity_image.xml b/utilcode/pkg/src/main/res/layout/activity_image.xml
index bedbc27ca4..b22109c798 100644
--- a/utilcode/pkg/src/main/res/layout/activity_image.xml
+++ b/utilcode/pkg/src/main/res/layout/activity_image.xml
@@ -1,6 +1,33 @@
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
From 2fdbd96a8b8d9b3a7897b59e0dfce12a3097a71e Mon Sep 17 00:00:00 2001
From: liyujiang
Date: Wed, 26 Jun 2019 13:40:48 +0800
Subject: [PATCH 008/194] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E9=98=BF=E9=87=8C?=
=?UTF-8?q?=E4=BA=91=E4=BB=93=E5=BA=93=E5=9C=B0=E5=9D=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
build.gradle | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/build.gradle b/build.gradle
index 6a8c9055e5..2a396521c8 100644
--- a/build.gradle
+++ b/build.gradle
@@ -2,6 +2,18 @@
buildscript {
apply from: 'config.gradle'
repositories {
+ maven {
+ url 'https://maven.aliyun.com/repository/public'
+ name '代替 jcenter()及mavenCentral()'
+ }
+ maven {
+ url 'https://maven.aliyun.com/repository/jcenter'
+ name '代替 jcenter()'
+ }
+ maven {
+ url 'https://maven.aliyun.com/repository/google'
+ name '代替 google()'
+ }
if (bus.isDebug) {
maven() {
url uri(new File(project.rootDir, "maven"))
@@ -20,6 +32,18 @@ buildscript {
allprojects {
repositories {
+ maven {
+ url 'https://maven.aliyun.com/repository/public'
+ name '代替 jcenter()及mavenCentral()'
+ }
+ maven {
+ url 'https://maven.aliyun.com/repository/jcenter'
+ name '代替 jcenter()'
+ }
+ maven {
+ url 'https://maven.aliyun.com/repository/google'
+ name '代替 google()'
+ }
google()
jcenter()
}
From 047750f980bd4890a6e939817a0aed30aff2b636 Mon Sep 17 00:00:00 2001
From: liyujiang
Date: Wed, 26 Jun 2019 17:05:22 +0800
Subject: [PATCH 009/194] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=87=A0=E4=B8=AA?=
=?UTF-8?q?=E9=80=9A=E8=BF=87=E6=8C=87=E5=AE=9A=E6=97=A5=E6=9C=9F=E6=97=B6?=
=?UTF-8?q?=E9=97=B4=E6=A0=BC=E5=BC=8F=E6=A8=A1=E6=9D=BF=E8=BF=9B=E8=A1=8C?=
=?UTF-8?q?=E6=97=B6=E9=97=B4=E6=88=B3=E5=A4=84=E7=90=86=E6=96=B9=E6=B3=95?=
=?UTF-8?q?=E5=8F=8A=E7=9B=B8=E5=BA=94=E7=9A=84=E5=8D=95=E5=85=83=E6=B5=8B?=
=?UTF-8?q?=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/blankj/utilcode/util/TimeUtils.java | 60 +-
.../blankj/utilcode/util/TimeUtilsTest.java | 552 +++++++++---------
2 files changed, 336 insertions(+), 276 deletions(-)
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..19a9ad40c4 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
@@ -24,10 +24,17 @@ public final class TimeUtils {
private static final ThreadLocal SDF_THREAD_LOCAL = new ThreadLocal<>();
private static SimpleDateFormat getDefaultFormat() {
+ return getDateFormat("yyyy-MM-dd HH:mm:ss");
+ }
+
+ @NonNull
+ private static SimpleDateFormat getDateFormat(String pattern) {
SimpleDateFormat simpleDateFormat = SDF_THREAD_LOCAL.get();
if (simpleDateFormat == null) {
- simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault());
+ simpleDateFormat = new SimpleDateFormat(pattern, Locale.getDefault());
SDF_THREAD_LOCAL.set(simpleDateFormat);
+ } else {
+ simpleDateFormat.applyPattern(pattern);
}
return simpleDateFormat;
}
@@ -47,6 +54,17 @@ public static String millis2String(final long millis) {
return millis2String(millis, getDefaultFormat());
}
+ /**
+ * Milliseconds to the formatted time string.
+ *
+ * @param millis The milliseconds.
+ * @param pattern The pattern of date format, such as yyyy/MM/dd HH:mm
+ * @return the formatted time string
+ */
+ public static String millis2String(long millis, @NonNull final String pattern) {
+ return millis2String(millis, getDateFormat(pattern));
+ }
+
/**
* Milliseconds to the formatted time string.
*
@@ -69,6 +87,18 @@ public static long string2Millis(final String time) {
return string2Millis(time, getDefaultFormat());
}
+ /**
+ * Formatted time string to the milliseconds.
+ * The pattern is {@code yyyy-MM-dd HH:mm:ss}.
+ *
+ * @param time The formatted time string.
+ * @param pattern The pattern of date format, such as yyyy/MM/dd HH:mm
+ * @return the milliseconds
+ */
+ public static long string2Millis(final String time, @NonNull final String pattern) {
+ return string2Millis(time, getDateFormat(pattern));
+ }
+
/**
* Formatted time string to the milliseconds.
*
@@ -96,6 +126,18 @@ public static Date string2Date(final String time) {
return string2Date(time, getDefaultFormat());
}
+ /**
+ * Formatted time string to the date.
+ * The pattern is {@code yyyy-MM-dd HH:mm:ss}.
+ *
+ * @param time The formatted time string.
+ * @param pattern The pattern of date format, such as yyyy/MM/dd HH:mm
+ * @return the date
+ */
+ public static Date string2Date(final String time, @NonNull final String pattern) {
+ return string2Date(time, getDateFormat(pattern));
+ }
+
/**
* Formatted time string to the date.
*
@@ -123,6 +165,17 @@ public static String date2String(final Date date) {
return date2String(date, getDefaultFormat());
}
+ /**
+ * Date to the formatted time string.
+ *
+ * @param date The date.
+ * @param pattern The pattern of date format, such as yyyy/MM/dd HH:mm
+ * @return the formatted time string
+ */
+ public static String date2String(final Date date, @NonNull final String pattern) {
+ return getDateFormat(pattern).format(date);
+ }
+
/**
* Date to the formatted time string.
*
@@ -1338,8 +1391,8 @@ public static String getChineseZodiac(final int year) {
return CHINESE_ZODIAC[year % 12];
}
- private static final int[] ZODIAC_FLAGS = {20, 19, 21, 21, 21, 22, 23, 23, 23, 24, 23, 22};
- private static final String[] ZODIAC = {
+ private static final int[] ZODIAC_FLAGS = {20, 19, 21, 21, 21, 22, 23, 23, 23, 24, 23, 22};
+ private static final String[] ZODIAC = {
"水瓶座", "双鱼座", "白羊座", "金牛座", "双子座", "巨蟹座",
"狮子座", "处女座", "天秤座", "天蝎座", "射手座", "魔羯座"
};
@@ -1431,4 +1484,5 @@ private static String millis2FitTimeSpan(long millis, int precision) {
}
return sb.toString();
}
+
}
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 5b82277a0a..7ca86340c3 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
@@ -1,274 +1,280 @@
-package com.blankj.utilcode.util;
-
-import com.blankj.utilcode.constant.TimeConstants;
-
-import org.junit.Test;
-
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.Locale;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-
-/**
- *
- * author: Blankj
- * blog : http://blankj.com
- * time : 2016/08/12
- * desc : test TimeUtils
- *
- */
-public class TimeUtilsTest extends BaseTest {
-
- private final DateFormat defaultFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault());
- private final DateFormat mFormat = new SimpleDateFormat("yyyy MM dd HH:mm:ss", Locale.getDefault());
-
- private final long timeMillis = 1493887049000L;// 2017-05-04 16:37:29
- private final Date timeDate = new Date(timeMillis);
- private final String timeString = defaultFormat.format(timeDate);
- private final String timeStringFormat = mFormat.format(timeDate);
- private final long tomorrowTimeMillis = 1493973449000L;
- private final Date tomorrowTimeDate = new Date(tomorrowTimeMillis);
- private final String tomorrowTimeString = defaultFormat.format(tomorrowTimeDate);
- private final String tomorrowTimeStringFormat = mFormat.format(tomorrowTimeDate);
- private final long delta = 10;// 允许误差 10ms
-
- @Test
- public void millis2String() {
- assertEquals(timeString, TimeUtils.millis2String(timeMillis));
- assertEquals(timeStringFormat, TimeUtils.millis2String(timeMillis, mFormat));
- }
-
- @Test
- public void string2Millis() {
- assertEquals(timeMillis, TimeUtils.string2Millis(timeString));
- assertEquals(timeMillis, TimeUtils.string2Millis(timeStringFormat, mFormat));
- }
-
- @Test
- public void string2Date() {
- assertEquals(timeDate, TimeUtils.string2Date(timeString));
- assertEquals(timeDate, TimeUtils.string2Date(timeStringFormat, mFormat));
- }
-
- @Test
- public void date2String() {
- assertEquals(timeString, TimeUtils.date2String(timeDate));
- assertEquals(timeStringFormat, TimeUtils.date2String(timeDate, mFormat));
- }
-
- @Test
- public void date2Millis() {
- assertEquals(timeMillis, TimeUtils.date2Millis(timeDate));
- }
-
- @Test
- public void millis2Date() {
- assertEquals(timeDate, TimeUtils.millis2Date(timeMillis));
- }
-
- @Test
- public void getTimeSpan() {
- long testTimeMillis = timeMillis + 120 * TimeConstants.SEC;
- String testTimeString = TimeUtils.millis2String(testTimeMillis);
- String testTimeStringFormat = TimeUtils.millis2String(testTimeMillis, mFormat);
- Date testTimeDate = TimeUtils.millis2Date(testTimeMillis);
- assertEquals(-120, TimeUtils.getTimeSpan(timeString, testTimeString, TimeConstants.SEC));
- assertEquals(2, TimeUtils.getTimeSpan(testTimeStringFormat, timeStringFormat, mFormat, TimeConstants.MIN));
- assertEquals(-2, TimeUtils.getTimeSpan(timeDate, testTimeDate, TimeConstants.MIN));
- assertEquals(120, TimeUtils.getTimeSpan(testTimeMillis, timeMillis, TimeConstants.SEC));
- }
-
- @Test
- public void getFitTimeSpan() {
- long testTimeMillis = timeMillis + 10 * TimeConstants.DAY + 10 * TimeConstants.MIN + 10 * TimeConstants.SEC;
- String testTimeString = TimeUtils.millis2String(testTimeMillis);
- String testTimeStringFormat = TimeUtils.millis2String(testTimeMillis, mFormat);
- Date testTimeDate = TimeUtils.millis2Date(testTimeMillis);
- assertEquals("-10天10分钟10秒", TimeUtils.getFitTimeSpan(timeString, testTimeString, 5));
- assertEquals("10天10分钟10秒", TimeUtils.getFitTimeSpan(testTimeStringFormat, timeStringFormat, mFormat, 5));
- assertEquals("-10天10分钟10秒", TimeUtils.getFitTimeSpan(timeDate, testTimeDate, 5));
- assertEquals("10天10分钟10秒", TimeUtils.getFitTimeSpan(testTimeMillis, timeMillis, 5));
- }
-
- @Test
- public void getNowMills() {
- assertEquals(System.currentTimeMillis(), TimeUtils.getNowMills(), delta);
- }
-
- @Test
- public void getNowString() {
- assertEquals(System.currentTimeMillis(), TimeUtils.string2Millis(TimeUtils.getNowString()), delta);
- assertEquals(System.currentTimeMillis(), TimeUtils.string2Millis(TimeUtils.getNowString(mFormat), mFormat), delta);
- }
-
- @Test
- public void getNowDate() {
- assertEquals(System.currentTimeMillis(), TimeUtils.date2Millis(TimeUtils.getNowDate()), delta);
- }
-
- @Test
- public void getTimeSpanByNow() {
- assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowString(), TimeConstants.MSEC), delta);
- assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowString(mFormat), mFormat, TimeConstants.MSEC), delta);
- assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowDate(), TimeConstants.MSEC), delta);
- assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowMills(), TimeConstants.MSEC), delta);
- }
-
- @Test
- public void getFitTimeSpanByNow() {
-// long spanMillis = 6 * TimeConstants.DAY + 6 * TimeConstants.HOUR + 6 * TimeConstants.MIN + 6 * TimeConstants.SEC;
-// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(TimeUtils.millis2String(System.currentTimeMillis() + spanMillis), 4));
-// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(TimeUtils.millis2String(System.currentTimeMillis() + spanMillis, mFormat), mFormat, 4));
-// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(TimeUtils.millis2Date(System.currentTimeMillis() + spanMillis), 4));
-// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(System.currentTimeMillis() + spanMillis, 4));
- }
-
- @Test
- public void getFriendlyTimeSpanByNow() {
- assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowString()));
- assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowString(mFormat), mFormat));
- assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowDate()));
- assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowMills()));
- assertEquals("1秒前", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowMills() - TimeConstants.SEC));
- assertEquals("1分钟前", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowMills() - TimeConstants.MIN));
- }
-
- @Test
- public void getMillis() {
- assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeMillis, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeString, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeStringFormat, mFormat, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeDate, 1, TimeConstants.DAY));
- }
-
- @Test
- public void getString() {
- assertEquals(tomorrowTimeString, TimeUtils.getString(timeMillis, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeStringFormat, TimeUtils.getString(timeMillis, mFormat, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeString, TimeUtils.getString(timeString, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeStringFormat, TimeUtils.getString(timeStringFormat, mFormat, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeString, TimeUtils.getString(timeDate, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeStringFormat, TimeUtils.getString(timeDate, mFormat, 1, TimeConstants.DAY));
- }
-
- @Test
- public void getDate() {
- assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeMillis, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeString, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeStringFormat, mFormat, 1, TimeConstants.DAY));
- assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeDate, 1, TimeConstants.DAY));
- }
-
- @Test
- public void getMillisByNow() {
- assertEquals(System.currentTimeMillis() + TimeConstants.DAY, TimeUtils.getMillisByNow(1, TimeConstants.DAY), delta);
- }
-
- @Test
- public void getStringByNow() {
- long tomorrowMillis = TimeUtils.string2Millis(TimeUtils.getStringByNow(1, TimeConstants.DAY));
- assertEquals(System.currentTimeMillis() + TimeConstants.DAY, tomorrowMillis, delta);
- tomorrowMillis = TimeUtils.string2Millis(TimeUtils.getStringByNow(1, mFormat, TimeConstants.DAY), mFormat);
- assertEquals(System.currentTimeMillis() + TimeConstants.DAY, tomorrowMillis, delta);
- }
-
- @Test
- public void getDateByNow() {
- long tomorrowMillis = TimeUtils.date2Millis(TimeUtils.getDateByNow(1, TimeConstants.DAY));
- assertEquals(System.currentTimeMillis() + TimeConstants.DAY, TimeUtils.getMillisByNow(1, TimeConstants.DAY), delta);
- }
-
- @Test
- public void isToday() {
- long todayTimeMillis = System.currentTimeMillis();
- String todayTimeString = TimeUtils.millis2String(todayTimeMillis);
- String todayTimeStringFormat = TimeUtils.millis2String(todayTimeMillis, mFormat);
- Date todayTimeDate = TimeUtils.millis2Date(todayTimeMillis);
- long tomorrowTimeMillis = todayTimeMillis + TimeConstants.DAY;
- String tomorrowTimeString = TimeUtils.millis2String(tomorrowTimeMillis);
- Date tomorrowTimeDate = TimeUtils.millis2Date(tomorrowTimeMillis);
- assertTrue(TimeUtils.isToday(todayTimeString));
- assertTrue(TimeUtils.isToday(todayTimeStringFormat, mFormat));
- assertTrue(TimeUtils.isToday(todayTimeDate));
- assertTrue(TimeUtils.isToday(todayTimeMillis));
- assertFalse(TimeUtils.isToday(tomorrowTimeString));
- assertFalse(TimeUtils.isToday(tomorrowTimeStringFormat, mFormat));
- assertFalse(TimeUtils.isToday(tomorrowTimeDate));
- assertFalse(TimeUtils.isToday(tomorrowTimeMillis));
- }
-
- @Test
- public void isLeapYear() {
- assertFalse(TimeUtils.isLeapYear(timeString));
- assertFalse(TimeUtils.isLeapYear(timeStringFormat, mFormat));
- assertFalse(TimeUtils.isLeapYear(timeDate));
- assertFalse(TimeUtils.isLeapYear(timeMillis));
- assertTrue(TimeUtils.isLeapYear(2016));
- assertFalse(TimeUtils.isLeapYear(2017));
- }
-
- @Test
- public void getChineseWeek() {
- assertEquals("星期四", TimeUtils.getChineseWeek(timeString));
- assertEquals("星期四", TimeUtils.getChineseWeek(timeStringFormat, mFormat));
- assertEquals("星期四", TimeUtils.getChineseWeek(timeDate));
- assertEquals("星期四", TimeUtils.getChineseWeek(timeMillis));
- }
-
- @Test
- public void getUSWeek() {
- assertEquals("Thursday", TimeUtils.getUSWeek(timeString));
- assertEquals("Thursday", TimeUtils.getUSWeek(timeStringFormat, mFormat));
- assertEquals("Thursday", TimeUtils.getUSWeek(timeDate));
- assertEquals("Thursday", TimeUtils.getUSWeek(timeMillis));
- }
-
- @Test
- public void getWeekIndex() {
- assertEquals(5, TimeUtils.getValueByCalendarField(timeString, Calendar.DAY_OF_WEEK));
- assertEquals(5, TimeUtils.getValueByCalendarField(timeString, Calendar.DAY_OF_WEEK));
- assertEquals(5, TimeUtils.getValueByCalendarField(timeStringFormat, mFormat, Calendar.DAY_OF_WEEK));
- assertEquals(5, TimeUtils.getValueByCalendarField(timeDate, Calendar.DAY_OF_WEEK));
- assertEquals(5, TimeUtils.getValueByCalendarField(timeMillis, Calendar.DAY_OF_WEEK));
- }
-
- @Test
- public void getWeekOfMonth() {
- assertEquals(1, TimeUtils.getValueByCalendarField(timeString, Calendar.WEEK_OF_MONTH));
- assertEquals(1, TimeUtils.getValueByCalendarField(timeStringFormat, mFormat, Calendar.WEEK_OF_MONTH));
- assertEquals(1, TimeUtils.getValueByCalendarField(timeDate, Calendar.WEEK_OF_MONTH));
- assertEquals(1, TimeUtils.getValueByCalendarField(timeMillis, Calendar.WEEK_OF_MONTH));
- }
-
- @Test
- public void getWeekOfYear() {
- assertEquals(18, TimeUtils.getValueByCalendarField(timeString, Calendar.WEEK_OF_YEAR));
- assertEquals(18, TimeUtils.getValueByCalendarField(timeStringFormat, mFormat, Calendar.WEEK_OF_YEAR));
- assertEquals(18, TimeUtils.getValueByCalendarField(timeDate, Calendar.WEEK_OF_YEAR));
- assertEquals(18, TimeUtils.getValueByCalendarField(timeMillis, Calendar.WEEK_OF_YEAR));
- }
-
- @Test
- public void getChineseZodiac() {
- assertEquals("鸡", TimeUtils.getChineseZodiac(timeString));
- assertEquals("鸡", TimeUtils.getChineseZodiac(timeStringFormat, mFormat));
- assertEquals("鸡", TimeUtils.getChineseZodiac(timeDate));
- assertEquals("鸡", TimeUtils.getChineseZodiac(timeMillis));
- assertEquals("鸡", TimeUtils.getChineseZodiac(2017));
- }
-
- @Test
- public void getZodiac() {
- assertEquals("金牛座", TimeUtils.getZodiac(timeString));
- assertEquals("金牛座", TimeUtils.getZodiac(timeStringFormat, mFormat));
- assertEquals("金牛座", TimeUtils.getZodiac(timeDate));
- assertEquals("金牛座", TimeUtils.getZodiac(timeMillis));
- assertEquals("狮子座", TimeUtils.getZodiac(8, 16));
- }
+package com.blankj.utilcode.util;
+
+import com.blankj.utilcode.constant.TimeConstants;
+
+import org.junit.Test;
+
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.Locale;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+
+/**
+ *
+ * author: Blankj
+ * blog : http://blankj.com
+ * time : 2016/08/12
+ * desc : test TimeUtils
+ *
+ */
+public class TimeUtilsTest {
+
+ private final DateFormat defaultFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault());
+ private final DateFormat mFormat = new SimpleDateFormat("yyyy MM dd HH:mm:ss", Locale.getDefault());
+
+ private final long timeMillis = 1493887049000L;// 2017-05-04 16:37:29
+ private final Date timeDate = new Date(timeMillis);
+ private final String timeString = defaultFormat.format(timeDate);
+ private final String timeStringFormat = mFormat.format(timeDate);
+ private final long tomorrowTimeMillis = 1493973449000L;
+ private final Date tomorrowTimeDate = new Date(tomorrowTimeMillis);
+ private final String tomorrowTimeString = defaultFormat.format(tomorrowTimeDate);
+ private final String tomorrowTimeStringFormat = mFormat.format(tomorrowTimeDate);
+ private final long delta = 10;// 允许误差 10ms
+
+ @Test
+ 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分"));
+ }
+
+ @Test
+ public void string2Millis() {
+ assertEquals(timeMillis, TimeUtils.string2Millis(timeString));
+ assertEquals(timeMillis, TimeUtils.string2Millis(timeStringFormat, mFormat));
+ assertEquals(TimeUtils.string2Millis("2017-05-04 16:37", "yyyy-MM-dd HH:mm"),
+ TimeUtils.string2Millis("2017年05月04日16时37分", "yyyy年MM月dd日HH时mm分"));
+ }
+
+ @Test
+ public void string2Date() {
+ assertEquals(timeDate, TimeUtils.string2Date(timeString));
+ assertEquals(timeDate, TimeUtils.string2Date(timeStringFormat, mFormat));
+ assertEquals(timeDate, TimeUtils.string2Date("2017-05-04 16:37:29", "yyyy-MM-dd HH:mm:ss"));
+ }
+
+ @Test
+ public void date2String() {
+ assertEquals(timeString, TimeUtils.date2String(timeDate));
+ assertEquals(timeStringFormat, TimeUtils.date2String(timeDate, mFormat));
+ assertEquals("2017-05-04 16:37:29", TimeUtils.date2String(timeDate, "yyyy-MM-dd HH:mm:ss"));
+ }
+
+ @Test
+ public void date2Millis() {
+ assertEquals(timeMillis, TimeUtils.date2Millis(timeDate));
+ }
+
+ @Test
+ public void millis2Date() {
+ assertEquals(timeDate, TimeUtils.millis2Date(timeMillis));
+ }
+
+ @Test
+ public void getTimeSpan() {
+ long testTimeMillis = timeMillis + 120 * TimeConstants.SEC;
+ String testTimeString = TimeUtils.millis2String(testTimeMillis);
+ String testTimeStringFormat = TimeUtils.millis2String(testTimeMillis, mFormat);
+ Date testTimeDate = TimeUtils.millis2Date(testTimeMillis);
+ assertEquals(-120, TimeUtils.getTimeSpan(timeString, testTimeString, TimeConstants.SEC));
+ assertEquals(2, TimeUtils.getTimeSpan(testTimeStringFormat, timeStringFormat, mFormat, TimeConstants.MIN));
+ assertEquals(-2, TimeUtils.getTimeSpan(timeDate, testTimeDate, TimeConstants.MIN));
+ assertEquals(120, TimeUtils.getTimeSpan(testTimeMillis, timeMillis, TimeConstants.SEC));
+ }
+
+ @Test
+ public void getFitTimeSpan() {
+ long testTimeMillis = timeMillis + 10 * TimeConstants.DAY + 10 * TimeConstants.MIN + 10 * TimeConstants.SEC;
+ String testTimeString = TimeUtils.millis2String(testTimeMillis);
+ String testTimeStringFormat = TimeUtils.millis2String(testTimeMillis, mFormat);
+ Date testTimeDate = TimeUtils.millis2Date(testTimeMillis);
+ assertEquals("-10天10分钟10秒", TimeUtils.getFitTimeSpan(timeString, testTimeString, 5));
+ assertEquals("10天10分钟10秒", TimeUtils.getFitTimeSpan(testTimeStringFormat, timeStringFormat, mFormat, 5));
+ assertEquals("-10天10分钟10秒", TimeUtils.getFitTimeSpan(timeDate, testTimeDate, 5));
+ assertEquals("10天10分钟10秒", TimeUtils.getFitTimeSpan(testTimeMillis, timeMillis, 5));
+ }
+
+ @Test
+ public void getNowMills() {
+ assertEquals(System.currentTimeMillis(), TimeUtils.getNowMills(), delta);
+ }
+
+ @Test
+ public void getNowString() {
+ assertEquals(System.currentTimeMillis(), TimeUtils.string2Millis(TimeUtils.getNowString()), delta);
+ assertEquals(System.currentTimeMillis(), TimeUtils.string2Millis(TimeUtils.getNowString(mFormat), mFormat), delta);
+ }
+
+ @Test
+ public void getNowDate() {
+ assertEquals(System.currentTimeMillis(), TimeUtils.date2Millis(TimeUtils.getNowDate()), delta);
+ }
+
+ @Test
+ public void getTimeSpanByNow() {
+ assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowString(), TimeConstants.MSEC), delta);
+ assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowString(mFormat), mFormat, TimeConstants.MSEC), delta);
+ assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowDate(), TimeConstants.MSEC), delta);
+ assertEquals(0, TimeUtils.getTimeSpanByNow(TimeUtils.getNowMills(), TimeConstants.MSEC), delta);
+ }
+
+ @Test
+ public void getFitTimeSpanByNow() {
+// long spanMillis = 6 * TimeConstants.DAY + 6 * TimeConstants.HOUR + 6 * TimeConstants.MIN + 6 * TimeConstants.SEC;
+// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(TimeUtils.millis2String(System.currentTimeMillis() + spanMillis), 4));
+// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(TimeUtils.millis2String(System.currentTimeMillis() + spanMillis, mFormat), mFormat, 4));
+// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(TimeUtils.millis2Date(System.currentTimeMillis() + spanMillis), 4));
+// assertEquals("6天6小时6分钟6秒", TimeUtils.getFitTimeSpanByNow(System.currentTimeMillis() + spanMillis, 4));
+ }
+
+ @Test
+ public void getFriendlyTimeSpanByNow() {
+ assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowString()));
+ assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowString(mFormat), mFormat));
+ assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowDate()));
+ assertEquals("刚刚", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowMills()));
+ assertEquals("1秒前", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowMills() - TimeConstants.SEC));
+ assertEquals("1分钟前", TimeUtils.getFriendlyTimeSpanByNow(TimeUtils.getNowMills() - TimeConstants.MIN));
+ }
+
+ @Test
+ public void getMillis() {
+ assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeMillis, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeString, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeStringFormat, mFormat, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeMillis, TimeUtils.getMillis(timeDate, 1, TimeConstants.DAY));
+ }
+
+ @Test
+ public void getString() {
+ assertEquals(tomorrowTimeString, TimeUtils.getString(timeMillis, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeStringFormat, TimeUtils.getString(timeMillis, mFormat, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeString, TimeUtils.getString(timeString, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeStringFormat, TimeUtils.getString(timeStringFormat, mFormat, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeString, TimeUtils.getString(timeDate, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeStringFormat, TimeUtils.getString(timeDate, mFormat, 1, TimeConstants.DAY));
+ }
+
+ @Test
+ public void getDate() {
+ assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeMillis, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeString, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeStringFormat, mFormat, 1, TimeConstants.DAY));
+ assertEquals(tomorrowTimeDate, TimeUtils.getDate(timeDate, 1, TimeConstants.DAY));
+ }
+
+ @Test
+ public void getMillisByNow() {
+ assertEquals(System.currentTimeMillis() + TimeConstants.DAY, TimeUtils.getMillisByNow(1, TimeConstants.DAY), delta);
+ }
+
+ @Test
+ public void getStringByNow() {
+ long tomorrowMillis = TimeUtils.string2Millis(TimeUtils.getStringByNow(1, TimeConstants.DAY));
+ assertEquals(System.currentTimeMillis() + TimeConstants.DAY, tomorrowMillis, delta);
+ tomorrowMillis = TimeUtils.string2Millis(TimeUtils.getStringByNow(1, mFormat, TimeConstants.DAY), mFormat);
+ assertEquals(System.currentTimeMillis() + TimeConstants.DAY, tomorrowMillis, delta);
+ }
+
+ @Test
+ public void getDateByNow() {
+ long tomorrowMillis = TimeUtils.date2Millis(TimeUtils.getDateByNow(1, TimeConstants.DAY));
+ assertEquals(System.currentTimeMillis() + TimeConstants.DAY, TimeUtils.getMillisByNow(1, TimeConstants.DAY), delta);
+ }
+
+ @Test
+ public void isToday() {
+ long todayTimeMillis = System.currentTimeMillis();
+ String todayTimeString = TimeUtils.millis2String(todayTimeMillis);
+ String todayTimeStringFormat = TimeUtils.millis2String(todayTimeMillis, mFormat);
+ Date todayTimeDate = TimeUtils.millis2Date(todayTimeMillis);
+ long tomorrowTimeMillis = todayTimeMillis + TimeConstants.DAY;
+ String tomorrowTimeString = TimeUtils.millis2String(tomorrowTimeMillis);
+ Date tomorrowTimeDate = TimeUtils.millis2Date(tomorrowTimeMillis);
+ assertTrue(TimeUtils.isToday(todayTimeString));
+ assertTrue(TimeUtils.isToday(todayTimeStringFormat, mFormat));
+ assertTrue(TimeUtils.isToday(todayTimeDate));
+ assertTrue(TimeUtils.isToday(todayTimeMillis));
+ assertFalse(TimeUtils.isToday(tomorrowTimeString));
+ assertFalse(TimeUtils.isToday(tomorrowTimeStringFormat, mFormat));
+ assertFalse(TimeUtils.isToday(tomorrowTimeDate));
+ assertFalse(TimeUtils.isToday(tomorrowTimeMillis));
+ }
+
+ @Test
+ public void isLeapYear() {
+ assertFalse(TimeUtils.isLeapYear(timeString));
+ assertFalse(TimeUtils.isLeapYear(timeStringFormat, mFormat));
+ assertFalse(TimeUtils.isLeapYear(timeDate));
+ assertFalse(TimeUtils.isLeapYear(timeMillis));
+ assertTrue(TimeUtils.isLeapYear(2016));
+ assertFalse(TimeUtils.isLeapYear(2017));
+ }
+
+ @Test
+ public void getChineseWeek() {
+ assertEquals("星期四", TimeUtils.getChineseWeek(timeString));
+ assertEquals("星期四", TimeUtils.getChineseWeek(timeStringFormat, mFormat));
+ assertEquals("星期四", TimeUtils.getChineseWeek(timeDate));
+ assertEquals("星期四", TimeUtils.getChineseWeek(timeMillis));
+ }
+
+ @Test
+ public void getUSWeek() {
+ assertEquals("Thursday", TimeUtils.getUSWeek(timeString));
+ assertEquals("Thursday", TimeUtils.getUSWeek(timeStringFormat, mFormat));
+ assertEquals("Thursday", TimeUtils.getUSWeek(timeDate));
+ assertEquals("Thursday", TimeUtils.getUSWeek(timeMillis));
+ }
+
+ @Test
+ public void getWeekIndex() {
+ assertEquals(5, TimeUtils.getValueByCalendarField(timeString, Calendar.DAY_OF_WEEK));
+ assertEquals(5, TimeUtils.getValueByCalendarField(timeString, Calendar.DAY_OF_WEEK));
+ assertEquals(5, TimeUtils.getValueByCalendarField(timeStringFormat, mFormat, Calendar.DAY_OF_WEEK));
+ assertEquals(5, TimeUtils.getValueByCalendarField(timeDate, Calendar.DAY_OF_WEEK));
+ assertEquals(5, TimeUtils.getValueByCalendarField(timeMillis, Calendar.DAY_OF_WEEK));
+ }
+
+ @Test
+ public void getWeekOfMonth() {
+ assertEquals(1, TimeUtils.getValueByCalendarField(timeString, Calendar.WEEK_OF_MONTH));
+ assertEquals(1, TimeUtils.getValueByCalendarField(timeStringFormat, mFormat, Calendar.WEEK_OF_MONTH));
+ assertEquals(1, TimeUtils.getValueByCalendarField(timeDate, Calendar.WEEK_OF_MONTH));
+ assertEquals(1, TimeUtils.getValueByCalendarField(timeMillis, Calendar.WEEK_OF_MONTH));
+ }
+
+ @Test
+ public void getWeekOfYear() {
+ assertEquals(18, TimeUtils.getValueByCalendarField(timeString, Calendar.WEEK_OF_YEAR));
+ assertEquals(18, TimeUtils.getValueByCalendarField(timeStringFormat, mFormat, Calendar.WEEK_OF_YEAR));
+ assertEquals(18, TimeUtils.getValueByCalendarField(timeDate, Calendar.WEEK_OF_YEAR));
+ assertEquals(18, TimeUtils.getValueByCalendarField(timeMillis, Calendar.WEEK_OF_YEAR));
+ }
+
+ @Test
+ public void getChineseZodiac() {
+ assertEquals("鸡", TimeUtils.getChineseZodiac(timeString));
+ assertEquals("鸡", TimeUtils.getChineseZodiac(timeStringFormat, mFormat));
+ assertEquals("鸡", TimeUtils.getChineseZodiac(timeDate));
+ assertEquals("鸡", TimeUtils.getChineseZodiac(timeMillis));
+ assertEquals("鸡", TimeUtils.getChineseZodiac(2017));
+ }
+
+ @Test
+ public void getZodiac() {
+ assertEquals("金牛座", TimeUtils.getZodiac(timeString));
+ assertEquals("金牛座", TimeUtils.getZodiac(timeStringFormat, mFormat));
+ assertEquals("金牛座", TimeUtils.getZodiac(timeDate));
+ assertEquals("金牛座", TimeUtils.getZodiac(timeMillis));
+ assertEquals("狮子座", TimeUtils.getZodiac(8, 16));
+ }
}
\ No newline at end of file
From 8fa41678ee59c8644293f2b9c00febd8b1e6b96c Mon Sep 17 00:00:00 2001
From: liyujiang
Date: Wed, 26 Jun 2019 17:06:46 +0800
Subject: [PATCH 010/194] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=B8=AA?=
=?UTF-8?q?=E7=94=A8=E4=BA=8E=E8=A7=A3=E5=86=B3ScrollView=E5=B5=8C?=
=?UTF-8?q?=E5=A5=97ListView/GridView/WebView/RecyclerView=E7=AD=89?=
=?UTF-8?q?=E6=97=A0=E6=B3=95=E7=BD=AE=E9=A1=B6=E9=97=AE=E9=A2=98=E7=9A=84?=
=?UTF-8?q?=E6=96=B9=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/blankj/utilcode/util/ViewUtils.java | 24 +++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java
index 16b573fab0..2efce48662 100644
--- a/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java
+++ b/utilcode/lib/src/main/java/com/blankj/utilcode/util/ViewUtils.java
@@ -33,4 +33,28 @@ public static void setViewEnabled(View view, boolean enabled, View... excludes)
}
view.setEnabled(enabled);
}
+
+ /**
+ * 用于解决ScrollView嵌套ListView/GridView/WebView/RecyclerView等无法置顶问题
+ *
+ * @param view ScrollView嵌套的跟视图
+ */
+ public static void fixScrollViewTopping(View view) {
+ view.setFocusable(false);
+ ViewGroup viewGroup = null;
+ if (view instanceof ViewGroup) {
+ viewGroup = (ViewGroup) view;
+ }
+ if (viewGroup == null) {
+ return;
+ }
+ for (int i = 0, n = viewGroup.getChildCount(); i < n; i++) {
+ View childAt = viewGroup.getChildAt(i);
+ childAt.setFocusable(false);
+ if (childAt instanceof ViewGroup) {
+ fixScrollViewTopping(childAt);
+ }
+ }
+ }
+
}
\ No newline at end of file
From 83735f35b3c67e5026ddcc9cd6c32accb13e1761 Mon Sep 17 00:00:00 2001
From: Blankj <625783482@qq.com>
Date: Fri, 28 Jun 2019 13:20:00 +0800
Subject: [PATCH 011/194] see 06/28 log
---
gradle/config/configApp.gradle | 7 +-
.../com/blankj/launcher/app/LauncherApp.java | 4 +
.../com/blankj/lib/base/BaseFragment.java | 8 +-
.../com/blankj/lib/base/rv/BaseAdapter.java | 53 +++++++++---
.../java/com/blankj/lib/base/rv/BaseCell.java | 4 +-
.../com/blankj/subutil/util/CountryUtils.java | 3 +-
.../com/blankj/subutil/util/BaseTest.java | 2 +
.../com/blankj/subutil/util/TestUtils.java | 2 +
.../subutil/util/http/nodeServer/app.js | 1 -
.../subutil/util/http/nodeServer/index.htm | 18 ----
.../subutil/util/http/nodeServer/package.json | 13 ---
.../nodeServer/public/images/image_lena.jpg | Bin 53220 -> 0 bytes
.../subutil/util/http/nodeServer/server.js | 79 ------------------
.../subutil/util/http/nodeServer/star.jpg | Bin 13072 -> 0 bytes
.../subutil/util/http/nodeServer/users.json | 20 -----
.../blankj/utilcode/util/ActivityUtils.java | 3 +-
.../com/blankj/utilcode/util/ClickUtils.java | 44 ++++++++++
.../blankj/utilcode/util/LanguageUtils.java | 38 +++++++++
.../java/com/blankj/utilcode/util/Utils.java | 2 +-
.../com/blankj/utilcode/util/ViewUtils.java | 10 +--
utilcode/pkg/src/main/AndroidManifest.xml | 4 +
.../utilcode/pkg/feature/CoreUtilActivity.kt | 3 +
.../pkg/feature/keyboard/KeyboardActivity.kt | 5 ++
.../pkg/feature/language/LanguageActivity.kt | 59 +++++++++++++
.../src/main/res/layout/activity_language.xml | 23 +++++
.../main/res/layout/activity_util_core.xml | 7 ++
.../src/main/res/values-zh-rCN/strings.xml | 6 ++
utilcode/pkg/src/main/res/values/strings.xml | 6 +-
28 files changed, 263 insertions(+), 161 deletions(-)
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/app.js
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/index.htm
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/package.json
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/public/images/image_lena.jpg
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/server.js
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/star.jpg
delete mode 100644 subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/users.json
create mode 100644 utilcode/lib/src/main/java/com/blankj/utilcode/util/LanguageUtils.java
create mode 100644 utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/language/LanguageActivity.kt
create mode 100644 utilcode/pkg/src/main/res/layout/activity_language.xml
create mode 100644 utilcode/pkg/src/main/res/values-zh-rCN/strings.xml
diff --git a/gradle/config/configApp.gradle b/gradle/config/configApp.gradle
index dd49160df7..76787bcf32 100644
--- a/gradle/config/configApp.gradle
+++ b/gradle/config/configApp.gradle
@@ -87,10 +87,13 @@ def configSigning(Project pro) {
def configApkName(Project pro) {
pro.android.applicationVariants.all { variant ->
if (variant.buildType.name != "debug") {
- variant.getPackageApplicationProvider().get().outputDirectory = new File("${rootDir.path}/apk")
- variant.getPackageApplicationProvider().get().outputScope.apkDatas.forEach { apkData ->
+ def artifact = variant.getPackageApplicationProvider().get()
+ artifact.outputDirectory = new File("${rootDir.path}/apk")
+ artifact.outputScope.apkDatas.forEach { apkData ->
apkData.outputFileName = "util" + suffix +
+ (variant.flavorName == "" ? "" : ("_" + variant.flavorName)) +
"_" + variant.versionName.replace(".", "_") +
+ "_" + variant.buildType.name +
".apk"
}
}
diff --git a/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java b/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
index 990f6d47a5..653b3339f6 100644
--- a/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
+++ b/launcher/app/src/main/java/com/blankj/launcher/app/LauncherApp.java
@@ -3,6 +3,9 @@
import android.content.Context;
import com.blankj.lib.common.CommonApplication;
+import com.blankj.utilcode.util.LanguageUtils;
+
+import java.util.Locale;
/**
*
@@ -29,6 +32,7 @@ protected void attachBaseContext(Context base) {
public void onCreate() {
super.onCreate();
sInstance = this;
+ LanguageUtils.applyLanguage(getBaseContext(), Locale.SIMPLIFIED_CHINESE);
}
}
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 692ad8a213..cd9a005f22 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
@@ -31,10 +31,10 @@ public abstract class BaseFragment extends Fragment
private static final String TAG = "BaseFragment";
private static final String STATE_SAVE_IS_HIDDEN = "STATE_SAVE_IS_HIDDEN";
- private ClickUtils.OnDebouncingClickListener mDebouncingClick = new ClickUtils.OnDebouncingClickListener() {
+ private View.OnClickListener mClickListener = new View.OnClickListener() {
@Override
- public void onDebouncingClick(View v) {
- BaseFragment.this.onDebouncingClick(v);
+ public void onClick(View v) {
+ onDebouncingClick(v);
}
};
@@ -119,7 +119,7 @@ public void onDestroy() {
}
public void applyDebouncingClickListener(View... views) {
- ClickUtils.applyGlobalDebouncing(views, mDebouncingClick);
+ ClickUtils.applyGlobalDebouncing(views, mClickListener);
}
public T findViewById(@IdRes int id) {
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 619d84e5ae..cd83ae923e 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
@@ -18,20 +18,19 @@
*/
public class BaseAdapter extends RecyclerView.Adapter {
+ public BaseCell mEmptyCell;
+ public List mHeaders;
public List mData;
+ public List mFooters;
public Context mContext;
public LayoutInflater mInflater;
- public void setData(@NonNull final List data) {
- mData = data;
- }
-
- public List getData() {
- return mData;
- }
-
@Override
public final int getItemViewType(int position) {
+ int headerSize = getHeaderSize();
+ if (headerSize > position) {
+ return mHeaders.get(position).viewType;
+ }
return mData.get(position).viewType;
}
@@ -47,16 +46,44 @@ public final void onBindViewHolder(@NonNull BaseViewHolder holder, int position)
mData.get(position).bind(holder, position);
}
+ @Override
+ public void onViewRecycled(@NonNull BaseViewHolder holder) {
+ super.onViewRecycled(holder);
+ int position = holder.getAdapterPosition();
+ mData.get(position).onViewRecycled(holder, position);
+ }
+
@Override
public int getItemCount() {
+ return getHeaderSize() + getDataSize() + getFooterSize();
+ }
+
+ public void setEmptyCell(BaseCell emptyCell) {
+ mEmptyCell = emptyCell;
+ }
+
+ private int getHeaderSize() {
+ if (mHeaders == null) return 0;
+ return mHeaders.size();
+ }
+
+ private int getDataSize() {
if (mData == null) return 0;
return mData.size();
}
- @Override
- public void onViewRecycled(@NonNull BaseViewHolder holder) {
- super.onViewRecycled(holder);
- int position = holder.getAdapterPosition();
- mData.get(position).onViewRecycled(holder, position);
+ private int getFooterSize() {
+ if (mFooters == null) return 0;
+ return mFooters.size();
+ }
+
+ public void setData(@NonNull final List data) {
+ mData = data;
}
+
+ public List getData() {
+ return mData;
+ }
+
+
}
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 a068edc22d..74fb63067a 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
@@ -36,12 +36,12 @@ public void onViewRecycled(@NonNull final BaseViewHolder holder, final int posit
protected int viewType;
public BaseCell(int layoutId) {
- viewType = getClass().hashCode();
+ viewType = layoutId + getClass().hashCode();
LAYOUT_SPARSE_ARRAY.put(viewType, layoutId);
}
public BaseCell(View view) {
- viewType = getClass().hashCode();
+ viewType = view.hashCode() + getClass().hashCode();
VIEW_SPARSE_ARRAY.put(viewType, view);
}
diff --git a/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java b/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
index dcb56b065c..4a41e71050 100644
--- a/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
+++ b/subutil/lib/src/main/java/com/blankj/subutil/util/CountryUtils.java
@@ -1,6 +1,7 @@
package com.blankj.subutil.util;
import android.content.Context;
+import android.content.res.Resources;
import android.telephony.TelephonyManager;
import com.blankj.utilcode.util.Utils;
@@ -36,7 +37,7 @@ public static String getCountryCodeByLanguage(String defaultValue) {
}
public static String getCountryByLanguage() {
- return Utils.getApp().getResources().getConfiguration().locale.getCountry();
+ return Resources.getSystem().getConfiguration().locale.getCountry();
}
public static String getCountryBySim() {
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/BaseTest.java b/subutil/lib/src/test/java/com/blankj/subutil/util/BaseTest.java
index d7dbca0823..7162d4ee6f 100644
--- a/subutil/lib/src/test/java/com/blankj/subutil/util/BaseTest.java
+++ b/subutil/lib/src/test/java/com/blankj/subutil/util/BaseTest.java
@@ -1,6 +1,8 @@
package com.blankj.subutil.util;
+import com.blankj.utilcode.util.Utils;
+
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/TestUtils.java b/subutil/lib/src/test/java/com/blankj/subutil/util/TestUtils.java
index 5e09412922..78422556ed 100644
--- a/subutil/lib/src/test/java/com/blankj/subutil/util/TestUtils.java
+++ b/subutil/lib/src/test/java/com/blankj/subutil/util/TestUtils.java
@@ -1,5 +1,7 @@
package com.blankj.subutil.util;
+import com.blankj.utilcode.util.Utils;
+
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/app.js b/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/app.js
deleted file mode 100644
index ae4a9a961c..0000000000
--- a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/app.js
+++ /dev/null
@@ -1 +0,0 @@
-var http = require('http');
\ No newline at end of file
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/index.htm b/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/index.htm
deleted file mode 100644
index 5d3ea5edde..0000000000
--- a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/index.htm
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- 文件上传表单
-
-
-
-文件上传:
-选择一个文件上传:
-
-
-
-
-
\ No newline at end of file
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/package.json b/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/package.json
deleted file mode 100644
index 6ca0b421cf..0000000000
--- a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/package.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "name": "nodeserver",
- "version": "1.0.0",
- "scripts": {
- "start": "node server.js"
- },
- "dependencies": {
- "cookie-parser": "^1.4.4",
- "express": "^4.16.4",
- "multer": "^1.4.1",
- "body-parser": "latest"
- }
-}
diff --git a/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/public/images/image_lena.jpg b/subutil/lib/src/test/java/com/blankj/subutil/util/http/nodeServer/public/images/image_lena.jpg
deleted file mode 100644
index ad90c8f96d72141d119ca71bd632b0261f5d7675..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 53220
zcmeFacUTn9@-IBgl5>(MIfLY!K}0}u&LAvHW(m7w2_k}mf`Wh`K?FolKtVvVih`)*
zBpJyWBxl}PjNfz4FFf}??_bx(?WwM=?yjz>>Ft^QOnLI<nr71!BezXgK`J?SK
z@c0G5KMV%|F4CVzWd~1tIJ2I!C(0A)?CHg;oc!@vCnJ*6-Z`>fjNy%=hETmy>0H@N_1&D%t?#WCb8TEddVUXt|RiAQB+N#l^+L
zCB(xcBqP8lAUi`sNJw&qhJxY@1qBTm;c5DD_+I$e9704uKtxPLN=!^jNlZ*kiOz^A
zzc(TK-*j;D8X&_39s&=c5LN(#3<4#CoQ!~z#6NilQ3SQbf}AE$VRV855DZK#Y#dxX
zd;-u3{#gkDFrYsxNdX8Z1d4%)frW#Oiv=YV1uMy*m@MSNSjzf#6s+D?MX)LFX1_Sk
z#(u`&jlHOtPei8*4o8CF+ShL|q&U^1(rcU-5{(>G-{znssJo0O;Ok|PjorSJ8yC6m
zEx({@EQe00RTm7V}gm9BeG{
zQx#Z*$uU6-TtdjM1qRp85mOR8wWO80US>8w_TtTIn)lS
z#u6y_#4i>8YYn)5t8g+15JFGKBm)!yMwLpV6)~$JLbKJFxmBh|J~L+a&3NPM1$IYV
zwt{o{#5;VxHOeD~&X^x7UNduPxEn_AauLg9-!LRX<_b}heV}`{``D1#Hf;EjdmMR3
zH9_QU-LM34RM%vIx04U?leK%a@51bf4%I>_ugxYs8a~SLK-9F7@1_i>-mcCe
zvAa8an0N%Q>+y0~JYrV3Pkpt4VK%uo6m|j>Z8BD+NF|iZkQf{Ys5d`ol1o|yUy_WYl9E+s`J^GcxYl2^1yt
z=|tcS&w4Or?u2!0F6x!P&o0j(7(5$Rxau1=TREIs?JRb$L#CMPkqIeIbLFwBS<$sxhm4;0df#9Meo65Y&vxjbNIuuM5Gtw_Sh-5^X>vcW}Du{*tPyxbt&>->l-$X7>}};i&cp@`puM
z01<{^2yDOnfVHIZD|Jmib(BK>L56bJhGHI5yS?<-qoVE5w5-nkp%WloGoNe@cTInq
z5-LIKO&%-Bw)A{Gr0$say{E@5s!F{TW8#`(o|UI4n}>Z+)i&T_#Rxp!9jz(@!`!tEE!kdzS6>>
zs#T$;>s|mB5rDkOKG2hL(n+j$L{T$WrLRzP%;CF7#CR?LjgJMv7$a{cQK*J;R+Lw=T!G!k}iE{Y>D_^gNl^uMf6_a^tHO}^2{scI~`|^gu
z#AO%u`-fv=!3j*<>sI~}_svxNrJs*TTrFV#c9eg-sHlDdO!2+?!tXzitm|Guh}|Gs
zT1T>i~UTL*~g=YDW1X;6IbL%XHNhZeJUBd=j#f0P5^AK6F{M6
zkEyMo{A-aQr-O2Ej@i-b2za`c>GK{-%=hgqW1}dDTzdQ>R=19;nagh@eceJdi0D#e
z6z)lG47azLKdTM5JFp25=#$zJZ^&GoX7z+L_1BC%^zKIae2MqWIRU8B@f)etd?gG$
zXrZAJ+K9p#B0N}AGej|?+{YL7IWu|3&f!x9#hfjjwVu$Yf%c=IhBZ_E{FysCM{+d2
zT>CFJ8wz_e4A;L57P~byuevGI5ABtVt|EE1%=hAs1lP&43dQ>$3GX|F$ka9%KRV18
zB_YqBau~|td4@pwdmlAPZY-5;y6G5<+0+5YT|-J&Hh}nRiDX03Ch%L53*N8bOIFE>%D5a
zn~=|UNY7ep)pcn3RH8T7+PKeb!p7oj<>2IISlGaP$=S>NWTF+83POG#xA>~x(~Jo6
ziB&Vit2`qdkACHm9lfXfVoUHGOw+6{08p^g#6Furs}3Z-w#HGLpNUajWqLM+M{!JC
zb^?UHa6;YUoOYl#28(fLFlUjc3oX6E>FV>KgS+X8K5~n~yz@uz8Dw
zIW?mN1Hv!+IZli;d@%NrNz&rq)Gf5=aD@)`F?snWhw;>pX=~6Vpv-x2V`XF{eABN4
zdffKC3|;0ZX45$0AVOv>gpEI0ZQWFo7B&lpzAw+1-O~=XK5QHN95zpV&ZoG{L)$;!
z^7Vbl!UqlGW
zn&U1RnX?DKK9WHRk4o-Ynr3B(l3UaK>KO9mhB3U+3jS|Mb?b4Q2FGRwP5@~9aY#%f
zG<~GBuTKhgvEymQQPH$&Zov~xjmDU4UX!UC|R=^Qq){EI{P{9
z)wcr`mV*V^&~`J%`&q~k-pCil$F}qCLGGW2nVydKM)aBY!kmZYb<5&6D_sloXy6m8eJvk$IPX$^FIpfxw6I_Li#l
z6F}|KEWmY@J);O(C7)Qe8k~M`cJW+birGe0oA=>t-I#{WT#xXceg6@m-7Dy5W1gM%
zdUH$3v+0@D%l3rse)^ARf{Wy1+ZAV?vhNlMKcIokrZ9=MVVQ8YR$@n7JLyiU?pclY
z{a{8iSakft`uep^9R*tN}KWAu3`opyPRiQFfN>m
zI!x;bm4O`8=HI&@Tc;*mvR~Kj!;dWf_z6b0v&hjC>=}~PP~KbCTXM+%l+cV$vi@}w
zgS;UHRN0biK8$~^=taBtJY>0aIGDlvQQiC2K*mhC@7Q4@?LJ+W(|pMG2_U|&n%aZZ
zcvc!MCWI&J+jGF{w6bynJh?IO`25hu4+1&IP#?KhW-l^{`ad=Zl%?Wah7mH}q}x#hrQ8UQ`LQ_~e$A
zXO3fxIb9&XU*SFZTyV*=JEr4}!j4P92~dA^(^PS*{mfQHdIhAav};BAY~#>DY#zLE
zXtt!)A;hh1zGQx-Dde-CP8?iIHj8a1two7J*~*?fE>f^DQoeY1p~XM^!@61Te{XF#X2ji_WfvHB88EW990K|g$VnN
zU5lGNiH(8Q)R*3g8=JEYvo0z=Tb)Tgc76Byp#!|vvOc;yY|C@s}z8$<$I;HEr8$@g~Wo=E;Gk|06tJefDdM3tNNDt2lLLOB2di3_SUxIgQZY;qZe7K
zJAJKfFN)ph7IX`i%7)u#w^F4Q3zj=BKH<;g-{sE@k!qr~zL>$2m>0Zz@$@o$B
z-kWA~s!{VsYF>?{F~{5)lt3Jtd~r>rUl^soxG>_xOf(KHibISAFM95Cahn^?m-m{n
zHjy)OUf$V}9IO^B%n+)7b8pw~s?(Fnm%=&7`IM~eO@%T4!!rSe(wD9mM@rrH7#W@q
zxOdq;T88KGRSB7v@UOC#hYi|oM_l{v4VFh7n$V|PjCprqw3C2
z*6NyX!=~BTx5C~d?F^mmqx8Go-qtj&ewjHnGlPmDC%|@QWtgz(A#Z0sRn3E!J5w%9
z3`W>iT>2qHcbnhSS04>7O>U0f?H7HH^kGUua6P1Rqn6;SY8|W2U)edJKPD@$FX>`M
z&87{XU3j2f;!KrHl-=Cgu(+@KtnGm+rhI9?gr?2}>lMsGQ?cl(qv83~LkcJ6ixDZ4
zP4>Q=HXbLyGwCWb21&Yf6C6iJ;Wo?#dP^8`aBQto@sQq>ElI~uf`Qg#050Jm{kluZ
z;iX5cih23aIltA}(5#Kv+66865f^s1%!|*Y>OBmdkETS|77zy#jn{PYtud~s$0aqG
zNWV2GbJFb0?&KITzE)RM(eR+KLUF;EoEdj~ap!5>nTh(M$c^S=u9^Ppmi+Z`+Mn6>
zQeFjKNNC^Z(30F2*Zs7Gs>W7Wwdme^XD}AN^JThr0u%CZsbDi5sUz+o_aY+f*$EJw
zRO)NI&d4Jn9CO2HV~^5mO|ie!er_H2zLaO{t78xGtS%`Z-4$_3rE^Qv4B9v+y*!wG
zS0swfmxrhr|EOGjL>W&4PWS4sgk
zwdA;`mNp>xY_u7`0^2d{q3;aW4Li{yh)ACghbst?D>bD^H!@H
zLklOsn})6;3hv~oVYkr1!KOrSPbUe6^5|jk%XuF=L~-{e_JBD{F=B8LD`{u@&exTZ
zxfBZfsxcaa7@A9|ihh%*_euT&fKU}Keeuo|7lixK=
zknTo8rtKMzlnj&iFWW2Gyjj+fnPCj+E6Ec?@-3v+2=kVH#&@Ngd**&>BzWMl
zRnz
z66N`FBw}L!1W3((_o3y3^N#hw=QoX8@*YVifb2g039x+r_45Iz0^c~n7gN=rNCc4O
zg8p0gE}Jt|OW3k0#djr_<|FeWUT=pk-mnbV_Fy8WQef=bxl5PPIKFI>q{HtX@pNi0
zHam8T=s+-8cgh^z{+wDe>eXvbPU-OC=$AL-d%X8eI1!qvZ;I?jR#DFCipuT#0?5Sk
zlQ}ty!eb`)HKX=@=xDeM7|#wVwpx`~)S9Y99%K+Po#~kA)L~>eW7N^wxgepTkQ-dN
zf*e^85G)2O@6ClLkwYPczcD?!9TeY3IETe#m7{R8RBZj3w1*O{`
zSM?hO7ANWNy4|;4b3WoaI^SB=kj)&r5}WH55}G^QJw_WDW--nfa6FiN@%k=RE!+F~
zZ%l)u#q?G?fdY!5S(`@I%@K*Wt~_K(+$kIvO?WeOlgP8ndvNTgH76&V_go1>M!ENf
zT+;RM)}!;unRJ@<5o3U-#9Xz?4ST|CHmw@bWlA4mdr*=2lw$^stB^Af3gj3MRZq$hscEInVhO$cRJ0}
zTEkxW&)d4uA2w*zzt@u@GmM6gs>OkKK?Y}PWd&(WWK!IWTZ6v@Fqh}_PB*kJ+c)4h
z{>HdN6M=7$S2-_Q&E#d|QNI7KWJq>A
zqP_D-vGe$@>4M)D^lE&pTbUPAZK39ghtW4pKgWmabRf#TaSSVtt4bj~Z`Lkclxyp=hP
z;@f(vI}7vUaE}U&DfNTCI%=H2xW!c14OT)woVNiM848CZ%GrIy1ZfsHqdVft3G~UM
zgoCm-a1e7lgOLhesZP(8IAudBy>_!G7OfkP$?|XmL3pX=SSXt;0VpCIsvK_XN$cb0dmdp
zF+Kb5bv(>N9~)EY>ok=*YFTB!0
zbHw+uosd#tTBf_(_Vdu&sZ{%jit3@&6QJC5KUv@jbUuEeSauN)hvRnC>W~PhABMRN
zc>n7OK1P{30W@A1OdtEmG3dDM)qHdAd%aNcfZp;=6i&3qp#16%coQIS@hQtoi$xyA
zN2pJDMBeQ0ZDK=)&h^hXY${~#7a2pXL2tc@+;slNwE_B%QEY0aPic+&7rVxW2aYq7kRG?`dCrBT#ub&>VZ{qC
zzi$X6I$#8MMVkF#8`28bAIzKIe_vq%VAj5VmH@p8-3&TnS|}p4N6e>OPz+`;s+nt^
zTXZ<~RhX;{>u}n*c@U9Zlj7^~c*dl4G?n$^&XIinQ0dsN>pA%Sov^n(5pr_L@rDu#
zap?yQx$Z9pNW7gxXYV4-76zBWUE*;$yheTp4xU0IDQ~tL-7ESG_%qsez6h_wH#O5j
zl|ok5DzedDvRM&1-E(0B0)eFc5d#W9sONUl@twwPnRXvQv^a(^p<|b76qgiszU&v@E~38b+hU=CvTpcp<#|6K{70dZ6`~b?I+$$F>lBf
zewBJ{SoqCQyvtE*{!ldX1Q7Xn0)S6mHBEPogBkXVuK3{Mb=4i@W%JVj5GRr-}Y5{{f`V3cbn!t;4giHE`*eN
zm*&*9dM@V*cXzBXZ4O3g4^0NJg
zH{M6S-N}2m8E4`KMLmxWg7QDv(yseT7jD;QxAov+YQAI+2#_ADIgDK4Xh*&p);bK^
z$RmZ>1ScM11Z?j%>?b+baKsm6Jx(rv6SePz
zWV8sOPwy`;8D8xQ${gzoO__hTAW)h@KqF3f_3WE{?Xa08QvpX>94wX-CXGpt+=)wanfIby0R+VbBw;aw9b
z&%Q-C^65hJwtsL#+i0ZKtm}k^T;dKtV}^>k3VofboIadZypgUDUpja5~jhwpORfm$MEPvlznMqJ}zA&ERH?Uvc~d@OHz)4&X3O
z&9?UEKMcwgNNQx7sJWWDcH!CLcn-(48DOiu(%LPEoohJFeA{ZjWoZS1~ybBVH%C
z4d&c`A08B~+S25V-4`{cwYZx7c3H8+(BtWWTl`VpO?aG}?c+(}C8z35{AWP<8lkIN
z%m!mlxB0ampEcb0vM*otzZHz-Jp`Zp3fkW%aMRSTt`=z~fnCdQwVF@$Lw!2B{CdO9
zFUaY<^3nSbb(MXqomGu*so|YN8gl`udvTD~KtJQYyFy)lrg}&1k5bdU-uaekyhW&K
zU(4T0VOu)lNYYYx&3?t#=c{|eNLAX(cG>6Mr(x#R;10~adk#Uy=I<0dLL`7
zje$-P#THFQR#r7vFiowJZ+bFtvdl^T`!`-u0U!xS^S
zr)>>g0?-oYT~O#Y=<4r%!hLk?Jm5yEW=0_E`(WQ2==pehIvT=JzFxZat}w6?%bCSl
zGPXVpfo=@od;O{hOQ#LbyQ2_4bRe|%b#X_zAWl00>+w#dRkY1Dzt3M5-310enEjq3
z`5$xC^+LILB9LG`HCj@|3x)WpHlX5e@AIo*;DprvRZ#IksQfM5hbz8@Th^7Of2hq6P@
z;8aOHCq3j(KS0xHVep7n8_8JUK(G>=uPUk&QC{GV}PlVHtCWJq0&?@}FC;G`ZaB*_}vx4Af1*qFE
zdGyr*UH-1a4;%u<&*SNpgT`P00P$&lnkj|@-~El~w1~!IFrG@%{<93-I4$Fy=3oXn
zZ3SXA&Q8~673dT4
zgOBiaN3UXN=nb~Lr!T?*`7hTh3`~PhR~e
z8#Dlp1KiQh_jD1(^Mm`K{)4#5Pxe2>3GAIzJl#Eg{xB}t_x{hT{i;CQSjQ8AwlyBg
z(+m9iMZ*7FrSRRsvi>5n{vxveBC`G>vi>5n{vxve
zBC`G>vi>5n{vxveBC`G>vi>5n{vxveBC`G>vi>5n{vxveBC`G>vi>5n{vxveBC`G>
zvi>5n{vxvepFw1u{*uZ9{$L7x$0neEN+ki50SCYnum>Rv%zz%?4ALm@gFL0YKndFa
zL4p}j0soi*5kLqK2E+jY@Pq!D_H?xGSP7g{%mf4ioO~sQIipZsGJ=8#q<|ed4u}BE
z(?c-8&Pz~OKu8dfQw;F3gSo*`%=T~)DIm|fTGPPF?BXELYAUWRr0t~wcXm+^@_`!$
z=@`L+++flUtcnWEase^{9$p@BlpS+`hdTl(6Clre+PMr!quGM2%%>tKH+k06C>_jZ
z+Iq|?o<4A9aRCW_n6Rh_v!t|uu(-5{l-N0RG!h9xAu&N=X?|f*8StN&5c7}33XbOE
z;3#8o;o^_6z>+-ck4gFa`wRGs3V8ZBfo-Lw1%*TeMMU^P34UZC0%aG#k3h2h?BN0&
z3G;C|MSC%$djye8z9@NCP}A>I@bLQ8?SHh@PeBLRFF7v|u5dcI156O^4)=f~P)N|O
z!szLrcIx#r=E|=o|LFQx_36p@*$6bPw)TH+@bkQRc>EdyiBk0gr}5vNWh5GUAZP$b
zdiwgn;HrM0nr!I7ykt~-;C3Lc%Lv4D{X9{>A%y=iOw1qc;2<0fF3*aN8^bRw!Y?do
zBrGH&CM+W+#wR2tBP8@)RNK?R#WC=oq9W2pKSRv?LlpEJ2M}WRKMFg*WE?$xJnX=E
zyLi|+!3ABt;7+W}zsxCfimL!e2GtY&ldqwo0^$T6UEIM6B#5zN)=*WE5SEsZ;1>}P
zKGj!STSfzcMA;!=aE%M{te}wuTwEMv;0}&bqA(GAetQQIVSX{Vs3gA~TuPK*3MMY<
zC<3#Ci3^MUY=6NM=8JX(bo=jDg@Y#y?Bln3_7VtaEA8eQZ
zV2}UR$UoZqg8;t&)=j>Tj`Vay`P=!xm7PG_{cpWd@V}gcCjt%A`8^9SJ0B2zih}zf
zh7pbcw-)~3?cm7-p&7Wbw$(Gxy{Mt33P8a7Ttam%7lbDUDFAqYFS?+2
z+Gge!%s6cziXIQVIR)|Zb}*!uw&6weyFdWA3ui`e$ICKCFB(4&)dJ}#KNq+^NcVs=ySuN43rM41xuEob
z+ku#VOf;~X9R-IugR~Gx6Z#k#fUnG8%7GC<37!6+?f;-rAdnrD1ynq}0#Bjc%-k>@
zX7G+zidh}*?+!|~ZUvD4+pW$i`+N4^R{kOP-;wBZ
z`@Mcc|MZ+es6PMZ{cic2=lKW(o`bKqK=1tK*{1?P<#hm{8T`#-e+WJ@i3EU(_CMxB
zh4z;}o&dPOVFGA_{!0I&z%R-Fn)qWp0rYskZWEa=e18*w8ST|D5ZUkR!;AzUqQIH?
z|J8~Aj~o7>)*pJDGk`n7ec<4&DYFUaW#Icz;ORyvP~;v1l(qr@X*(qVUH%MUQV;-8t4y#4^6R{5;hBKXwgAACY4*F{gEUxwn*Sri
zhzE-pNEat&G+V{Mh#BVVg3KrCaBiUnklI4#1GCI1nNT1%wvD1mS@2K|~-@5Cw=TL?vK&l{bAT5wi$N=OkWFE2(*~frl5MoebFko$k*EEy~fEHf-8EPt#htYoamSmjvnv3jwlv9__Xv8k}RuqCn8vCXkvv4gR1
zVP{~MV86!h#Gb_7!ok6z#o@z|$I->H!$ILh;iTd`!)d_j!kNa|#U;RH!WF^2h--n1
zz>UC7#x2CH$L+$M#XZ0y#pA$}!PCWazzf8S$IHd5#%sr$#yh|#!{@@6$2Y=v#lMPw
zAHNv?J^nEM1_1#9D}gkDK7k8CIKh2_=L8=Jz7p&ak`wY0st{Tc`Vz(w<`cdq93b2v
zA|m1>QX;Y-LJ`Fg6%aKNjS}q=QxFRfYY;mShY>#@t|0CrULnCF;UG~au^|Z}NhT>H
zX(w4C#Ute;RUx$_4JCa*T1DDVxpgonvWT*ca_tQH8L=}aX9CVVI8%3KoC-?C
zNu@#MP8Cm8O4UcTPt8EBObw^LNnK3cMZH5qPoqQwr-`8{q3NaBr)8#9rFEmdOIt}h
zLWfDmOQ%ogPnSveo^FYrl3tb`Mju08NTt7b{zcRlc|5N_20#pK80uch00xN>-f);{z1)Bwrg~Wy2g>r?4gvo_3
z2}cN53$Kgtioir3i1dgOiCz>96MZH6O^iGUM)5{N#@xof#&1nXOsq@_Om<8!m?oHxn+ckQn0+#*Gj}n6
zWr1U1V)58w%Tm=c$#U9C+$zed&zj3Rz`DhT&c@xQ&X&a1&bI6_)@9Sng_jTQbnPD5
zZP{zsr`xZ=RA4EvMF%B^dk*t(d3XYR)=}Ou!Ew$>-YL;(-dWK(*?GxD#U;(L`&XdtIz_Zhf&nwDn+*`&w$$QO5)8{b~g0x1y
zLQ#U7sn5RLzSn)f`YHH5@Z0q_@h=M?3qS;X4&)8I88{nsF(@w>GZ+^9_6p0Dt5?2;
zD2HT+LPG6B--fY;MTSj>tA#(gihtGZYHNg0L_);oHPdU=kqnXHk(1Zeu0M?;j`E4>
zkCu(jx`BDaDJF(&(^SzjRn@P4wEy-fZStK={M7NG8{6xGLHIURXB|Zsie44-7iX7HmBc;=p8Gyucyakf
zU#Vv4+cK%L;+GsR)5|H!V=5pOffZ|&&Xwb@%wKg@U8;IpEn8h)BT$oH%ToKG?o3^L
zJ$`*;{YgVm!`5rB*Gq4l-b}u=eLK`>*4Xn-|6SXA&G#RgE;cnbD>pZMkpEEIBGXd!
zQR-vmCy7rLpT$3yw~Duxw@I{Bv`eX7cJ?v(4S?^5h~(|w`4sYj#dQ?E{MXPpEJeYnQ2)~#9+3r{A;=S}?9Z
zI)TJ#!o-4NU_*c(LEb@K|EvXHpZg=oI|is4_(~x*4iwBVkPr+g876=QMtN7($EL6Y
zqr6j!+|9;0^F7G=S5YeaHFlqfZyYLOh6#^KVaT`Q7q}90$|R_b98is26S$n$@bGD9
zBk!qR%zbInZOl!#KDmJo^bYsEp7cG~`+pJZT}s`|IpD_qC$BzyncL-&)-ZPoyqQ{1
z)iN-@$18Km!Zj!+t+4vz;KKg*pzu&E(45$qxKOCa>Fa>#xb(_c`k=|!brR0)P0k6@*5agbf&6Bn*g8zq7v@M&l{B~p5kO
z+&tZr8NU;b0&i+=>D|1&=QKXm?YRQ_iid4u)I`sH87XXQU4ULi^Nv+-6C0!dH;`dm|OkmZ9OEK;`lM;c}j+h-EAy8B{zw}kMjkt
z-9;F!btlRK81IQexRO{EB6QMZMP<#y3n_Z8n_xexyH4WX^kLeIvqi=fUIJ~*@^Tpy
zesIB(S}x%k3E8EBV+OZ`I}^D;u>kI+WJiqbMeBN7#YR5XSa*~1kDc1;#5nne&-24_
zrwYW~v~DP{eZ1vnT^}>)9?8wpdg!cdOmFajVdo)pusw^r`heE3_t~T`QFFm(<|JFz
zglrkcnQ$G!J;GJ`!)WWeH5y^u7rY-
z;reiw#X|4xg|^qE#P0&K&Su)#p(bMIJ-7_~D=@izl&}lSnY1CTl#Q>N*wk~p`Q*<;
z&E^G9pO>)YM(L-WFZi@g?`Xvvg`3CS^eFv_%u?{JJ8t)1Qbxw9bZ0Y_ZO~sSRkGBl
z+^<St5K+RQ@r87{pE6TVVs&)y?;
zPce_>b|?@3{tHG9oyqynZEZd22II$mE7;C>&7T#ByH_41ixma*fAz#)wb*KlFz#$@
z_Dkb?!Y=q;`J!tAQ5cdf9t@miBMO!E<)q#mL=8*s^(j^z
zB39FFe;sgA>U%LcmZts{=DHsDCq;-`;{Bg8Mul&MyBx0r0
zf}7jAC0~XIuDwc_!MVY(gB5et`p_$#>nXQWWYw8(*3Ys=KIG}Vjxinb-hopLe2Tn!
zVLv@u+!dRicu}Wjd*_2FFY)V)7G{W^ssw%5S(aOU>qaIJowtwbf>)13?5?V>;?6av
zSlr>OldtuedsU{_IYNGLmz~^?a^7ao;rO1tI9H`hN)%0EqPL0c)vlL^NPQ_;9riWr
zbJ>;!Pq3O{L-QZ==+x7|XiU@#yhO^|3Zr|J-z-X=1YA+V)?a(R8p)q$Dk;XIVr=lJ
zo^ec0tfF9gRmge|Y4xJdeI(h^32TypQM8O@U&x{PJyik2{Jz>lH#*x4xk`%Tm6>k6
zirnlcZ*R$vhHOh;V|<7t#tv8`)#aLMo{gRc<4GoE2G^Cx;KVBTWfY^-Sf7+Do>l1K
z%o&m)Ztqb$hp8(x;S`z8#`2*ydFOLQsBNj_ejzjsPywVJh&WN;)N~Y
zMhel^jp+MwZ=M7u9IXoG+VdU9<0@jheZgOTutcXHBerf)=TJ_*9(K}6*con?bYK-x
z`6;aNabTF*NaGAs>sq$nw_#yfk4l?kE=hUx`qt2~ZY|(^B=tE)3i6I_M>atf>5;HDex~VZd%O`l44BDc&|>L`;3c`R6w5)
z60P;H%3F=EWKijR$$$Zm;nh1ApYq1kVP2+YKA2)}6H#r3`36%L5fXZ2WGIxb6fkj|
zVST2mump?0d28dmTnF-#CuM}7IoF*I(Po1iA!FI%YYaZSE;7kC-NG5~t&dtOa0b9`
zI|M43MaF)k7>UVvBFcWAj2K&MK!hQduj{e8L)`pC%yPgt@+Z4cll1U8-Nlx8&TH=i
z>qK>Hjc(+A)8n3D;BH-DDlL>LP>i~eoT_?9sS>IA*1Qhx#U3Z!Yr$UJ!yF+=^HCe6
zCg9?iw`V++C47M+Mdyg(%A7_IDrJ-Y&d^=!Nspaun^X#)-4)L*D&!
zA3w`T=Wwjh@3+XcgsPf8q4ZoTW~IET>yWtu&pTfl;Y`z&S1>NSnhZ={xU
z{Twez}0`u6}J#aU;gWnW~&4ceDoegtmGqzMylveaDlo>&;gi_CrOo{PSvhvOP14eA(Tp
zUZvuG%6MSRRk$mUF5Q(wBxTj}b1_Yh)7|04%QmycN9zUeKfUKP^kl<+!cLt>buEl!
zyXvvMOe>zQD6c4=JH@FE%t7UWF>?xOYbh*tIDoA=@tHbgm9a5_#Hjc=2S`+
ze*(ihoZF7t1h7O`YSR?|?oq22fBz@C?CWXatmKj`G$oh|qq
z_$?e~NR!#_3>ZX3b~m%Z19%qb&WuzxJ;rlLHh`|0LxxT7$m6cPd1vuhBB(91tOZeM
zY=4WJs73b-|AE@OT|)QFD`^3qj+P$ICG+}?cg{CWE?w)2BzkH^k22t4@SkgX#N%N0
zF8o;}!+@F*PZe|A$okxvGD1Q(M2^0_VIz(@(;+HMDAde(-6ib{ea@
zTX`Y0@ph$>L1$}TOJm*D$}Wum%?8!x$#;#CD+%+GE?`yqWlRk
z%UV0MSIJSC^0-zgP*L^knY?>iVcm>^k-EYwcxRw8I;~3q^B-CSpR5POeOWG{TATc0
zbG*~$8hPbH&j}!Sm9{Q$&&*jE&P>i~TQND?O(k&xoOD0!<6s9mAbPqMhMt*$?o7T{
zlJ;JAiD0_YiC>Xg{kr<#_`}S6jnhHpop}_gpiWd>kZDMncT$(jak4s@68VPG=2-o#
zUA_Gjl9l2C_LMeFPn!4W!`;;+%|t)Jf+WlLpI%>6`uOtk2$62XmG{U;6lPVz#_ZQv
zast4;!IkJMk=Gn97-XmzBupeHAExzjO`i+D!w~hR1|Pozeka5LJwvu`BU78{A<)14}b;y64d)3B9VHR?mU7bc)^(;H0fb*g9JfWo=$G5Eax~g;j8cRSV=2|qM|WUzr-S=l^e&$XYP{07pXlK
zQup;B&gkhnlf8`c#me>NoXQo{r^_5Y3_2f*4{{y)x5LUr?4p=gzB=5OE1L7Gu+WLv
ztmw{pZcZMxG9Q^@j1y`g$y{47)Oe+#JN`1Al!okM`-%1G^w;d(6hLXmzH5G{fHpUl
zDz3O~GM-Xvcry6E6M#Yb*KJ7JnK<8hz$=~~zFWWPw;uP{rvA}$PD{KUrs|CF?4#(M
zO)gG=&98y
z&CuS`T#}{l>3L>XbIa$>MZ7cgam~`TcfN{k-REki*SmYuU+%_WZB2ji@c?#4*HEWyR
z&~h`h5yJ?FRO%AWEl1Pw*I)F1^lFV-OIxtds9<2K7AYIX~Z=
z+f*A)$*919{A|zUn>e-FIzip@MDFGU&$w*bF>UQqCgMSbLUgLHRjk)3}&gZ)4#@t;AGl8|V#`r!ik%r*JhPDUI$PImK8n6=Kr+xa~I0z-{
z&o(B!=r1Co>iXDPP_sMJIp$NzTY+c#+HTG?C8EPf`0CJX(pxK^?9NOLucj`V06Evj
zgfjB3cO>BpqU`RIkX{j`vo}8Or(dTvzJVEcy-?N$+(Yawue%C=!_5-kH==Mu3OkIW~j$sq@63wCA}4hpJ-FZ3$8Sk
zz)iW-DQ4{8si)S#=H%_!gKPsz)X7EO`s6PV9N9NKg>7Le$7d15nN6AmLQWzYF|
z9quo$IK?nCnLF+(_Xkb6Cl_3lx6$AGbOK1NPG_}^a2`8vKINy_V5LdZ6%1@^m8Y&s
zGP<$6bwN))z=4@3tRgBZ*9d;+USV4JE$!&3_N1n~yugSMCd<+ktv=MJsEQucUeB}V
ztpug&w}^<}dFa0y%l;f1lZLOV-`ck^`aCOs3l%?j&wQ}JGG0B6t
zd-(maBxKEl8KP`wLzHv4xD;HCQHsOvBulUVdX_T+MLHh26ii&$V9D
z-Ur6NrIPGdxOayR+aBQCoQby18*MgyvQ*zm9!@@(Ig4_@!bqECssaC0M4>nV;5745gB=zU(+;i-Yhsbl%V719UlIbfl0cR2YxrbD(UmI
zHl=Cu>-a_jiVsq3*U93FYHwe^MXPr2ur7G!w#}G&H|sRZ@v&j48q>1+J3m?zt7~W7
zE9TeI2c%R^dU3o;5mry=Jx1>hHpp$@ri`dx$=iFclz^e>c}OlP4q6SFZrDE0QO2$CoZvl9vy!U+V#jXq4BzvcI-A>tq1-iz0-?CyQT-h8&`U_gOPze%X6>Y_>`1sC(Dhch3-(dPAya|wD*HLSrt5l+G;@)hN~H-quF9^fZM6b;wPq0cYAo(uLa_K
z_m)lUwC5+s`nWNJjn8jKM~E&aevFi|QSbI1xOuF+wwunr=EHv>Abs?}rLgI_g}`l~
z+v-9^I|efedyJHb8rAEI7vEF^&fXJT56rJ~nP~7Iw&Sx6VjAx^B|^z-(x773CJ^@?
zb%)enX4NK(YTz!hkrk4mn~%Z7M6IIi
z*6{hQ8z25Z0D3@$zsL7ny3yvL1dha4kn6rq696>IDeQ8_(MWEu673;g5yM31!B3Q^;Yi+1aX(~(TgB)Ne
zXKBeW4|D^>xVo6#z<_^WZ}&pdk@h#&1VyeDI$k$>rIIE&OafkQ{CeSs~_`nnDoh%
z{4`Tqc>K>w`{lR^;te^CM2Ewd8dk05Pd7)Pd2>s;*LD43qm
zxh8-O$pbrmKG^K?eCu61%wjp0=^y;#_x$3nndDto4NuPYmYa|`Xthm0&Q_OJdX1$ORWEGZ
zI=EG!us3jZvYtqA$n5;~k7Xb=0q#6JGbHma2sgV+T7j`f*?V-w
z1s0a`TuT+LvNYFMY^fTq?Ci#X0po!3yG&qYL`OH;zC`j=UP{p+wGk|yV$~I2QJ8fc
zzhb@$I_8H{syQWH1J-CXgHIb3Z~xYN#3fQd*|x9I_I~{G_uVYMOZ?`AipV$`DWP9r
ze*E3`N7U*&UN?>6xuhA-mqfC}
z!5pBwo12mT^V%&IH1VZrQV&zxwq>7lTnOsR?bzKRh)9sw#+(={hUj@6`*HE5epyta
z-^2*nRvVR6j>^i>?~KQqTcdw}EjDHY_CV^)aubO>&djVtdA&o+8WdU-uxh%LaqB)|
zyP<~OGCerd^h@xQ4+ibAeYcaIeO+?t+#r!W^`y6`mH2{O{U8qE&X{f-jx1M|11o!n2#>CB}bNJpML1&rPy!RC;_xR+zMeyyH
zSZmNkt!`vlEo5-1A08z{hhRt9N}sab4~=ohBGW8EKa)|ivPZkTy^7Z2*aem*qt5ZM
zssM}eIB~TpQI~NY)
z5md>SQL?s;5pDv|a#tgFJA!$4+ppi5F_VgM+1U$os_6H&I*yO#D+^s;Le`-4Z}i#M
zoxJc5w5$(@T8;aIT)r~ek5-97wjAFt`Mb*cZ<6)au+k)XJiDksFEj<2`N_4bOYqe=R>Le5Lt$r(6#t>5}b{0=w=dW8_Sm{Gm-(
zcaAjx%^@4Sj(042l1>R(8*CXs0DRWi+a$L};#q{Z6|E{sJMB*lIKaO)6C{_wKlAYo
zaUFjs{Ia65#x+e^MXu_E$8M&BdNBul%+m{*@^E!za1S@;n@|cU3_GuL*E5W`oosds
zqK}grfc!_<9~EoR3=HbuM1Ds3D8207bk<^|Hie_n;bF0q>}3A{Vm2AB*XE(Z3%TsA
z5i;YDeOISjHz_Z!6ZiA~0CF2(s84U6XtGMhb$Tpg)c*kg*EaOkQjGl0`%~$s(VkaN
zyVK;)&XNEu0BW|}x@>%V=J&D*w^7>P-Mkx1CxY)lwzeOl+u04nkDallvx}z{p9z7=3U50652K0rL0fR<`>{VA6CrWuW+DnWnju
zZnZoHYCBw*;)Hw4lc0wlbH5<*-#KU!wfxr!&LE|WAw$TG--#s90y-SGNt=cMIa;hd
zM&5mDBS|DOD3!^mSV#=O1MrH{weiiL)Eog3b=8#G#}tomWgV=S7e*y(Eja++m&MJ3
z{4`GW+t}nP`Lh$Pspz^bpwaEk(Ri*kIhUR7$zZUgVC-*o|qo^B9NEO*cN8Du}0C`*fG@aSchFtmlwA^InEe;nu4sXIe6EuTgWi#iG@Is&YS8pP8C0aqM$?O%$nB#Zyz3LtadaOVmh0*&?ih9>
zW9^b2Yiuk`_vss9WA^I=i!J$rLs=(}O0xdVM=JAn|2E
z_M~DC>VWslWt>Dccy@U+%`;1yd2HG%Sf`Ipluc`@>QJi$na3GEtpTqCKqy?3?UiMb
z$U!@Kl;Zu^AQnm+OthNr)R(7@~gHcK%o4^<{LjNXm?tb-xe)M?I5iT(=hl!C$&B-mRXn&
zG-AeQFD5tT4?kGV^%yTC5bGDm>n6|r+G5>SRv)sgc2IicA)I_yHVQXy%pdv8Up^GB7l=-Lg8hXZ1%2}p+rX#)&@q;+
zO7aW2Vg|&DS3I%zcgjDViTjmqJBB=K-@a~pAf7i-+aKNR@U1C`g++cL(~;Vwbf)>e
z%;+#lKUb#^qPu{`yYK$qV$gF*q;wCmd|QA+3UnWUCk=20Z
zyL7E6dV7lIHXNV_X((|%bJR48tA8;iv5B8hxsj1A$PuUrdb#PrI`|L6H`sE63v`*V
zn9b-~b+xXMZ9f~3brh-8wRu*7cc?+c?1sMxA8Y4;lRizr2n$!XhD}|8yhCZDnS;Y*
z!~N-z2t21@*;=Fl@Q$0FjH&{z0Rs;D0T71(<1LKdBeaoa1#
z2sTrYjzK@SEpa)p1{;aus@zJzq;LVZrxF^1!kZeObFj+{yPCubW<15B=~9~}^A(Pt
zD(`ag&Yq;K1r%HbCAk_?nBT-@k<(6ljhfD*6h`Q~k2c%IG%*W%hl=9Z$kS=?8-;Zg
zQy>);4O$*M6PFzk;od=@>Y@+QX%nRDmfm2~VZZX!-maWpNJZ@E#%QL3N=pcY(U)*X
z88!!SGZJu=IhOe3jP{7#GKT8Kt{q@?lIHsp?Ea=Xj@R!F9S4|
z*1cU#Lr4MH3`{7*><3-2*9PUsCXU;(-7CwI-hh{}MX%i1DJcNtG`nU(YM!8>xiqN&
zd;{#%&@jdPGoJ>GC0+U(7eKs+jpwC?EiB9B8x(qoovm_+t~zqH+Z@6KWUe
z1=1`KZ&)Ee00VKjr)~2jL{pC`T4`&hh`)Mc9LoY&ZP%qfS!W74CU&;QM>0DO5!Kj}
z@TgttTc88E?UoISz5YR@GTVR#7PX
zDuPlz0oZ0nEL-wx%ajr1{Is6x?)rO+`{`PH``P5WzL|vsO*5G!WAkP`^LGf;KzWJC
z&P0~uQV_Tx1~mkA@%%h8L!B@qaQiFrd&?i7{It5f@bT3(&^-v-elYbPBHeRG+8MZ{
zA`ZdpJ1a@y#L7dP+^wQE@gU%Nw#;dCPyz>B6wJy0(K?cq
zEExOtrg>xT@0CA1R4t`J8l!5Bgr8
zuW9CG*djrjYBB+y=EzSXx1<3X;$L8wxJm%qmGsIV`bmfVYzA^LR()Xv-11%0X(nf
z8`*6f`GOm@TYFf&BMfO6V(lWKsf;rbP_(blGoz!&nl&d|9dw~P<`;Q`&RX83tKVH|
znmksIcOwaJ(Viy-iP<5ybuC^!2<5itE;zBmJUliUr>e;*nFCByQ2f^OtoD4`6G
z?FgK+KohTM}&cW%=G6zs#g+gz4~F~{{Sne
z)nT^RUVRSA=Gp>~(Nj^@B~%0JSM0U)%#_*{*mtSUcP2q8Z_l~t#l{pjr>MNv_LlEs
zYKvoLtgH2S%W$nIC@a>Ta>)Cfb0a<5GAxV;AwVAzsQ7^d0CK@5sV8>#2%w-Lc+iGD
z$?Oz&IWky-yU%|xzdF2;`DJAS>vv78>nu!g`FBbpX^f|-m8-@TALW|+WbS8^V8?u<
z1LH3>{{YTS{$zRKrO-UJVHcKk+n~zUcD$}`olf7ql7p{8DNKRKE_0OzaFj)e#>!jd
zf5|;_%(rv-qtBX<(sa8Rq`K9wujU@I+r+$?iDN`S2k;x@PGB~OwT>Cc+_n!j{Q3O&
z(|<8EUoL)I{$E<$=|7i#SCyx^^}vYgw`1Xsc0hg@qgs?!H6)ffu+wQ}^-E__uGK=0
zI2(MxQ1VFEepI0z9w+CU2UihMrg7v?F1MOI*QRMAGS+tNC)6LXhCR(sx!Wn!Wbol_
z`YcB-P%D$~y(-jPOc@i6t(Xx*82clS^cl>|?q1Li5CG(!zlkcspJ;SG!@f~Q*&yWF
zp<08)?_S$wfFPIu(l(GWC0DI|iO(#3-SYnc=XyWXWTJ|z1ITvkOx$)x*+Z)BZ|)1`
z%_)dPB#Katx{vFf25|G5c2*<-ciaK-^4M+SM}G{#HtZv?MnI&vLsG!}akkVx0-drG
zZO0eC{{YT5`Kli${%zV=>bHq!p?UVwPcL81D5O!{$V9qpvwqDkR3{=uIq#VI{601s
z9O*HigOdE;R(@>xWv-2djr7vkYhmPy(qO7YevstrR@kuU6R97|wsTrBDCHpZ4(}w!
zNCSM|8u^(
z68?_T2#y`g4D$(ukfZJhrQ}Nd^$u
zJm&8H;6j%Oi)n3eStB5qmS#W$JILFbR)(8bVVN_xSu@;I`%O)BO*Gou#FJ}x;htNP
z2=o<55k>*)+@E@QVKSk!AgNpgPI
zu*{G)rnygrl>T3SU&rTGzPQzO8E-Vpomp({taRlj`&at0_>)f*;~ZhyjVp>O?g4Do
zYcu$9*k9xCb2M6C8eYAhr2a|#w6gN9m8aZl+GUh?I#s0I}%!ArK=GRLJDNk!F(mY8jjr^|qo=)NXs>ghV|2(U&2gl8v^d
zHSEx}SH4-T
zhwi;R!su(p^_`39%S{)`{#ViNwX2V)c|*$<5wqXxQbZz9q;yuNDIA}&qNcgXLUYJ?
zNhFf>`6G)EG5`Tw-xL0LetVD1AihxYT3zWMmo_pilPu?j-m`GMCc6Ob8XxZC>D{-^
zt3lcR5E78x;`>Xq&QfCov*$%pqNG%f*mm*Wz8SUaZkD!R8Df1<15^b~%`07p%Ow$I
z2I=(&v`)%)YI%wH9`9+l|-`
zP7hXdyB`kurIfgfya#3SA{GS!Ax#2-$L{Tck_uE{2;<72@m~AnkVF5|JtCoiZ-9ae
z54E<`Cp@wDcg#PYY6hKh6mg;Wm>PWooz8AMCv2n1)^@P{!F<1@pMZ`=hJes~JN`BK
zXG53G=Cs>}TB;I(gE%xGYy~~3*V`~jb^uUJtj9TM!;$Mv_u8b_dgW!mA3~d5*`>|2
zv9eM=8-Y+rJM4QmhWQ+RqeZhWKCjb1%lq5!KYmPk3(me~oL_2ox_q|!+_P~eWYZ>i
zmgtkZ$;A}N-OXFM%?7$27E)u?%F#@b!e0dH_wq}3d2yxQ9bS1aE(z476l=+4ke8K(
z1pQ#{mHI8m)BaBNE5;hyo<`7UdrMENQMZIK^#!Vijl<`
z3RsmN7$d_py`iWXa!(lK3%b!_B0ePcCzI2)e=uAmvFYzWt1N%sxE0#J7Q?6U&1_&p
znRYiq+)T!3>>f9{lHeI5wv9;~X}3T1zIbIIHY}lt&*|OhS_hV{Cbn5M7fKla0MV?V
zBB22T<8TE}vhDAXIl2x`WOQ}8WM@Z)D_LSoaIr99BE~33ZMq+9u0+$7v`FFT{Hy%y
z)0fF!a@8cWwOMTLoIS>!AOK4n6Y%pR;AAx@;8Y*-Ng12j+04Bq)^^UA0ml)|1NmjH
zev-L@&PiJ7^rnh!I_iVfHgYjvN<{!y({sme#Af3xE(CRSdU@R9dN5DVA31rC%${nO
zOxAVFokGh*{ms6Y%Y~#4H~riTLC69sO-*wPv-FUJOo-mwduLlIWZ)9ooB1vV2
z2PD7`wfw22M{TLwaSED#fQpDuLm&Wl>*7vm^%J{#Z9Hn8+!-!c)IhIMQAXO8+M~lY
ze7UpBi@6ZW{NBBX(^>0E@Hv4&2uB%Y~?IXT!ukOU;HUN)n(pKaa=3^Ie^Uk0PzJI>8eN?h4kWh_4uHuq-;)
zrffvPs%!A&_N5+j*1tj9Lbe)>zMRmHRiKhN7_Y=sAS%Oyh{ja){-
z?u^ltm`K%zhu|ED-nH+r88RFjS4)YO0}QStiXb2|H-rAc9ZIi{Y>}7AkSzZINw$b<
zjb&x3#cwZ}tgf`_(sE;Dm80bkrpZ-u9x$Nw-jv@m-~>sop@hn9`B(XQbLS00+h5o0
zjrN-J81$_sPk`!oFzoFy+l{0L`_}!V@DBOU>vdxkcq7lRlez5f&hg}OPiT%_Z_xb{
z$u`<tV-hQRASPdz
z(g=K-nu}h@wpxCj9j%nC;MLLF;Enr=ictNLnfl2IOrBQjG|(}Kji45JB)N`TC{kO!
zoLso9VcUA}{iDBqvsaTakJ5K{I5aYz^5pa{E9uI!{{W>*@=G`#t;?FbyLTtp<{6on
zH*O*!8i;#dpA>3?;tRn_mY@|KNEvKJIN2|~ky^r!8n04zVB3REokwi4+6(iS{&O43
zA}Q^46}B9ujiYBB0AsZW&%RltmxqxWxcImad*S~8%6(wy{&C(|R`Y+>0xzDak}P
zEy1}C;bh=<&Xz{S`8-A|6A|tzKbtl}$MYY}G5P`%CG$w=#-&N>2_7eUWqMzu;?J}p
z``hwhuq^`;D!Y!GY`RiKi+OeY0oTdt`Oprw`m0%DO!m
zA!Q|gbw1|3eY2v}a(TTsCTfn#J{2dB1BHA?L6}9_M{t^H?O9YKdQ7eMyMj7>*-VRm
zHf3o7%EWqo`oc!cVwi!t8WMgkgl1kS#~-2*x%Kk*9;`EG
zGaPa}Fdu8>k2K$%S*~>|&m-!Sn|&HNot@GpCzBpq)wTkiGkuE%L|-?K*5)}TXzYOV
z1-y3J?cIxxMkTlP$ZkcL!x?T3y;s2HxoAsg8X!!I=7YYyS6HIAf>@Pk^GhoRl4e84
z<0JJ9pq{DX17ua5v1EtTj5Vy#-Lfz>5=qrkt6DH1R=ecm9;cHa$-JTEiM-RQTH3I=
zIxm*JCe<#iqonfBa_V8Uwqa7!Pc0TP`zi}|%za*?!WGw}nWNHvW_&k5Zcpfbjrl9c
zvuK(f)&8qLJNtW1TD{3D>Dk7Fn6&G500vZTnDuw5Im_jo@{YpXWVZJ{&+s`Eni4
zN6>B{)BLGEwXI$zm#4)mN%e`FY8{d_?pgaN6*-rRvBT8k=A5$6h9ce%sQJfUMp!hT
z%lo+eon&5HeoltwVs+E*Ne@un+2hv0juYvwkD{#g8vwTVT6N4fHnN418KICe
zy?PWNowEjVr!pJv9*1wL2C{;7b!H3;07Ymv6&Yk?;?5j0O=RrrO2{
zxR&Zs8j1?_C-r5%FAX%D7WilWa!2#8$sTmlr_lVe&97ft$|V;Ts?LD)6=0`hPT7$R
zQ=Gv&2OlPQ!yKUz#Uef*H|F=&rm@rw(tBd(l-XaxX%DzOi=lpx)BL-lM!(&n+}@r&3l2md9rHn}%VeI9
zQKG}c2*<13C6uS`$Pz7fZnPBbntQWu)WVb&?8aC(7FrObjsAHtyHcI+36K*QAdill
z&<&}RiKe+i*z}rgGB@u278E9?fDZfSL~^uC6_@|klq6&-4k1XP*!|h%MBDEB2hE?J
z1D=<78;LZh3R8W-`DV|u&kkREgW5E3N%D4%D7`q3v+$3IS2}G+DtVnRCT1uWg^Am7
zN)DX??V9olgH5fBUG&Q5#c)l$xe9T7TUJA0>^I^wSx^6nxpq_Rwy_r>mjM-PKLR#$r>D8&JEKZ
ziN8s`igHh_+v(ndkwDV=P`Qhy<&{BG^kzI|#>OI!=zTG4FKndJ?=II&l`CJq6j
zl1Il3rE1EoH&Qwtxd@oo4^X1{EwYDJ7cpsiY$opKSeh7Z?5*FNcQZQy0ajnK!Kgvl
zuYI=4%#JvccMX6OL%sSZ`7QZ*Z{(aE
z%xiL-v!StjO&%P0afp8i^~w2G6qky>70u$&&{tn`O8Gme6^}uLFNm#n@`h)<17#}PYH7zjDFE7
zl~GQkY@hOGBjy^vmb1!0jfhR6K4{W>*K_3W&Ce>_CG18vlTb0K^wwHO1gy(dcnRpp
ze$n4C^;&NZHwkj+=IFJu&okpgpL6KXB3|3+HqEB#_YAsxPQoZTR3RpZkA`S-8A#lZ
zC#}Hy8Y2HV^^FFb3x_*(Qz|(3M^LAMG6(@63umi4Ljt7SO+$}~y8GE0W
z{{Wf4p4Z=)`ux_qK9y~2q_fJ}dDNR?t5Rj5JOLqU0q?h5-RZkFfHLayI_}vrmjpiD
zo^R%x??3rNRGUWDZ~m@sk~#QVaZ72Tka~#9P$>X|(=xmaay8uGOIx220)Pjr&F-f+
zS4}Hbxg?d}atgO1YvM`Fr~wyOn=#9icfWpfp}eyEzq|@r?mV@oTq}z8Se7QGd}u37
zs|M39eyi00@C$|pLaS9(W3cH{)8&~()t#Ad<^GP^@0_$t5Chx6FV-(Z(|F_fn{RVW
zuRdQ21oycbOnxR%A9;Cx)m5&w1G#oFK%{~=ftVFQZCB<@!{>By@Ax$D2S
zV*#^~DGO4nma2{`+Jot+_reO8id*Vb@>*3#!bsfjmIjgv7D3<9KBGbIbOs
z=myr#7c;r^%|x9p$x{)9uxajBZ1fW-1t}{3H`jr!nw;
z@^np8cCR7Rz-`3Me3|8$^et0O^G}?-RXGD(NV7bKq7d^Rs~Nzp<%79=Ao>4vg-3z*DND}
zkv#^UB_#q|GfY5@l%T9(0TlR-ba?cG2s>=^8FSAuxydN7wTABAdz*!K_10^PgbW?o
zVh#o>*`)}J8##Hd9NP0J8S>rMBl%OS0lM(tTUDja-4
znf_JUd1Lb1%ty^I{$A>Omc3-Wbdhm-CreLRc)MC53KWHI1)P>pXtWuZ9@3RnIA^jk
zgT=c#{LgDoJ<6VHzO=Zuy|lLUzeh_5Ed{iL_mC{A#1eHL2t_%pCa)w{|!%!UJIQ
zy#m&Xcmg+Qq9n+QaBV7g5~yv9CH&zr9#d0R`?A->i8v3agMN7cL2qiF2(`R){sEhHrJ
z3j9HJR^m=Y{Fc^<+w?o>
z*A(mfwybAy{z%F(pWYDcvPSU&`LzeFGx7Tb^E>ok55F?V-P2u~eF6C?qqH$<-eff|
zc14Yvbpe3|so~UStF&?u0C#C!q1@MoWiwMq44KxCjd=JwwbMW}ePcx?Rqt6c)Cu{{XckMhSNn=|GE2-QvZM9DN}CUQ=DFo>|{U
z38LvMsND%K1eY&;B6?`6SCTX(rep)a00jqKhF^mh5!|}nqHR6%9;bVvS;eG5s?EUL
zta@&T48EjRQPhbVM+K_qrvTJm{uyq3h7sWhns{P&A&>cgP=YsD#nsJ~{{X2RnsxL_
zk|M}gb$+4#PkC=h(6kGmGi!3k<((BQKCq8;c*9|!SSc_QUZkip9_=Fx=ZLviGI_mp
zrXdl-$UbM+{{S?vzdJnib#oM!K1=fGHoivk^MDK%=VNs;uEu+ca%1}|RwUfmChB-~jE{x4+LdGnp?_5x>3dx=oFxHM=c_1T({(AF09GqK`+0BBV>{4O|UN{&CC76CnQp
zNb>h9sT+yfDDF%$0Bf}ismy!f%tM2T4~g*UPvc}
zZmn+>F0JN~V^p?vG`JzRWDm1(tvikLtuW)Ddc2+~h=U~S&JU$oX | | | | | |