一产还、前言:
AndroidUtilCode 是一個(gè)強(qiáng)大易用的安卓工具類庫(kù)脱衙,它合理地封裝了安卓開(kāi)發(fā)中常用的函數(shù)露乏,具有完善的 Demo 和單元測(cè)試衍菱,利用其封裝好的 APIs 可以大大提高開(kāi)發(fā)效率,如今它主要包括兩部分模塊懦胞,其一是主工具類模塊:utilcode替久,其中的工具類是開(kāi)發(fā)中常用到的;其二是子工具類模塊:subutil躏尉,它包含的工具類并不是很常用蚯根,它的出現(xiàn)是為了防止主工具類的臃腫。
二胀糜、使用:
①u(mài)tilcode使用:
1. 依賴:
implementation 'com.blankj:utilcode:1.30.6'
// if u use AndroidX, use the following
implementation 'com.blankj:utilcodex:1.30.6'
注意:統(tǒng)一樣式設(shè)置:
//Toast設(shè)置統(tǒng)一樣式
fun initToast() {
//Kotlin中
val defaultMaker = ToastUtils.getDefaultMaker()
defaultMaker.setBgColor(this.resources.getColor(R.color.color_FF00000))
defaultMaker.setGravity(Gravity.CENTER,0,0)
defaultMaker.setTextColor(this.resources.getColor(R.color.color_FFFFFF))
}
2. Activity 相關(guān) -> ActivityUtils.java -> Demo
addActivityLifecycleCallbacks : 增加 Activity 生命周期監(jiān)聽(tīng)
removeActivityLifecycleCallbacks: 移除 Activity 生命周期監(jiān)聽(tīng)
getAliveActivityByContext : 根據(jù)上下文獲取存活的 Activity
getActivityByContext : 根據(jù)上下文獲取 Activity
isActivityExists : 判斷 Activity 是否存在
startActivity : 啟動(dòng) Activity
startActivityForResult : 啟動(dòng) Activity 為返回結(jié)果
startActivities : 啟動(dòng)多個(gè) Activity
startHomeActivity : 回到桌面
getActivityList : 獲取 Activity 棧鏈表
getLauncherActivity : 獲取啟動(dòng)項(xiàng) Activity
getMainActivities : 獲取主的 Activity 們
getTopActivity : 獲取棧頂 Activity
isActivityAlive : 判斷 Activity 是否存活
isActivityExistsInStack : 判斷 Activity 是否存在棧中
finishActivity : 結(jié)束 Activity
finishToActivity : 結(jié)束到指定 Activity
finishOtherActivities : 結(jié)束所有其他類型的 Activity
finishAllActivities : 結(jié)束所有 Activity
finishAllActivitiesExceptNewest : 結(jié)束除最新之外的所有 Activity
3. AdaptScreen 相關(guān) -> AdaptScreenUtils.java -> Demo
adaptWidth : 適配寬度
adaptHeight: 適配高度
closeAdapt : 關(guān)閉適配(pt 等同于 dp)
pt2Px : pt 轉(zhuǎn) px
px2Pt : px 轉(zhuǎn) pt
4. Api 相關(guān) -> ApiUtils.java -> README
getApi: 獲取 api 的實(shí)例
5. App 相關(guān) -> AppUtils.java -> Demo
registerAppStatusChangedListener : 注冊(cè) App 前后臺(tái)切換監(jiān)聽(tīng)器
unregisterAppStatusChangedListener: 注銷(xiāo) App 前后臺(tái)切換監(jiān)聽(tīng)器
installApp : 安裝 App(支持 8.0)
uninstallApp : 卸載 App
isAppInstalled : 判斷 App 是否安裝
isAppRoot : 判斷 App 是否有 root 權(quán)限
isAppDebug : 判斷 App 是否是 Debug 版本
isAppSystem : 判斷 App 是否是系統(tǒng)應(yīng)用
isAppForeground : 判斷 App 是否處于前臺(tái)
isAppRunning : 判斷 App 是否運(yùn)行
launchApp : 打開(kāi) App
relaunchApp : 重啟 App
launchAppDetailsSettings : 打開(kāi) App 具體設(shè)置
exitApp : 關(guān)閉應(yīng)用
getAppIcon : 獲取 App 圖標(biāo)
getAppPackageName : 獲取 App 包名
getAppName : 獲取 App 名稱
getAppPath : 獲取 App 路徑
getAppVersionName : 獲取 App 版本號(hào)
getAppVersionCode : 獲取 App 版本碼
getAppSignatures : 獲取 App 簽名
getAppSignaturesSHA1 : 獲取應(yīng)用簽名的的 SHA1 值
getAppSignaturesSHA256 : 獲取應(yīng)用簽名的的 SHA256 值
getAppSignaturesMD5 : 獲取應(yīng)用簽名的的 MD5 值
getAppInfo : 獲取 App 信息
getAppsInfo : 獲取所有已安裝 App 信息
getApkInfo : 獲取 Apk 信息
6. 數(shù)組相關(guān) -> ArrayUtils.java -> Test
newArray : 新建數(shù)組
newLongArray : 新建長(zhǎng)整型數(shù)組
newIntArray : 新建整型數(shù)組
newShortArray : 新建 short 數(shù)組
newCharArray : 新建字符數(shù)組
newByteArray : 新建字節(jié)數(shù)組
newDoubleArray : 新建雙精度數(shù)組
newFloatArray : 新建浮點(diǎn)數(shù)數(shù)組
newBooleanArray : 新建 boolean 數(shù)組
isEmpty : 判斷數(shù)組是否為空
getLength : 獲取數(shù)組長(zhǎng)度
isSameLength : 判斷兩數(shù)組長(zhǎng)度是否相等
get : 獲取數(shù)組的索引值
set : 設(shè)置數(shù)組的索引值
equals : 判斷數(shù)組是否相等
reverse : 逆序數(shù)組
copy : 拷貝數(shù)組
subArray : 截取數(shù)組
add : 增加數(shù)組
remove : 移除指定的索引
removeElement : 移除指定的元素
indexOf : 查找第一個(gè)元素的索引
lastIndexOf : 查找最后一個(gè)元素的索引
contains : 判斷是否包含該元素
toPrimitive : 裝箱數(shù)組轉(zhuǎn)基本類型數(shù)組
toObject : 基本類型數(shù)組轉(zhuǎn)裝箱數(shù)組
asList : 轉(zhuǎn)為鏈表
asUnmodifiableList: 轉(zhuǎn)為不可變鏈表
asArrayList : 轉(zhuǎn)為數(shù)組鏈表
asLinkedList : 轉(zhuǎn)為雙向鏈表
sort : 排序
forAllDo : 對(duì)所有元素做操作
toString : 數(shù)組轉(zhuǎn)為字符串
7. 欄相關(guān) -> BarUtils.java -> Demo
getStatusBarHeight : 獲取狀態(tài)欄高度(px)
setStatusBarVisibility : 設(shè)置狀態(tài)欄是否可見(jiàn)
isStatusBarVisible : 判斷狀態(tài)欄是否可見(jiàn)
setStatusBarLightMode : 設(shè)置狀態(tài)欄是否為淺色模式
isStatusBarLightMode : 判斷狀態(tài)欄是否為淺色模式
addMarginTopEqualStatusBarHeight : 為 view 增加 MarginTop 為狀態(tài)欄高度
subtractMarginTopEqualStatusBarHeight: 為 view 減少 MarginTop 為狀態(tài)欄高度
setStatusBarColor : 設(shè)置狀態(tài)欄顏色
setStatusBarColor4Drawer : 為 DrawerLayout 設(shè)置狀態(tài)欄顏色
transparentStatusBar : 透明狀態(tài)欄
getActionBarHeight : 獲取 ActionBar 高度
setNotificationBarVisibility : 設(shè)置通知欄是否可見(jiàn)
getNavBarHeight : 獲取導(dǎo)航欄高度
setNavBarVisibility : 設(shè)置導(dǎo)航欄是否可見(jiàn)
isNavBarVisible : 判斷導(dǎo)航欄是否可見(jiàn)
setNavBarColor : 設(shè)置導(dǎo)航欄顏色
getNavBarColor : 獲取導(dǎo)航欄顏色
isSupportNavBar : 判斷是否支持導(dǎo)航欄
setNavBarLightMode : 設(shè)置導(dǎo)航欄是否為淺色模式
isNavBarLightMode : 判斷導(dǎo)航欄是否為淺色模式
8. 亮度相關(guān) -> BrightnessUtils.java -> Demo
isAutoBrightnessEnabled : 判斷是否開(kāi)啟自動(dòng)調(diào)節(jié)亮度
setAutoBrightnessEnabled: 設(shè)置是否開(kāi)啟自動(dòng)調(diào)節(jié)亮度
getBrightness : 獲取屏幕亮度
setBrightness : 設(shè)置屏幕亮度
setWindowBrightness : 設(shè)置窗口亮度
getWindowBrightness : 獲取窗口亮度
9. Bus 相關(guān) -> BusUtils.java -> README
register : 注冊(cè)
unregister : 注銷(xiāo)
post : 發(fā)送
postSticky : 發(fā)送粘性
removeSticky: 移除粘性
toString_ : 查看插入的信息
10. 磁盤(pán)緩存相關(guān) -> CacheDiskStaticUtils.java -> Test
setDefaultCacheDiskUtils: 設(shè)置默認(rèn)磁盤(pán)緩存實(shí)例
put : 緩存中寫(xiě)入數(shù)據(jù)
getBytes : 緩存中讀取字節(jié)數(shù)組
getString : 緩存中讀取 String
getJSONObject : 緩存中讀取 JSONObject
getJSONArray : 緩存中讀取 JSONArray
getBitmap : 緩存中讀取 Bitmap
getDrawable : 緩存中讀取 Drawable
getParcelable : 緩存中讀取 Parcelable
getSerializable : 緩存中讀取 Serializable
getCacheSize : 獲取緩存大小
getCacheCount : 獲取緩存?zhèn)€數(shù)
remove : 根據(jù)鍵值移除緩存
clear : 清除所有緩存
11. 磁盤(pán)緩存相關(guān) -> CacheDiskUtils.java -> Test
getInstance : 獲取緩存實(shí)例
Instance.put : 緩存中寫(xiě)入數(shù)據(jù)
Instance.getBytes : 緩存中讀取字節(jié)數(shù)組
Instance.getString : 緩存中讀取 String
Instance.getJSONObject : 緩存中讀取 JSONObject
Instance.getJSONArray : 緩存中讀取 JSONArray
Instance.getBitmap : 緩存中讀取 Bitmap
Instance.getDrawable : 緩存中讀取 Drawable
Instance.getParcelable : 緩存中讀取 Parcelable
Instance.getSerializable: 緩存中讀取 Serializable
Instance.getCacheSize : 獲取緩存大小
Instance.getCacheCount : 獲取緩存?zhèn)€數(shù)
Instance.remove : 根據(jù)鍵值移除緩存
Instance.clear : 清除所有緩存
12. 二級(jí)緩存相關(guān) -> CacheDoubleStaticUtils.java -> Test
setDefaultCacheDoubleUtils: 設(shè)置默認(rèn)二級(jí)緩存實(shí)例
put : 緩存中寫(xiě)入數(shù)據(jù)
getBytes : 緩存中讀取字節(jié)數(shù)組
getString : 緩存中讀取 String
getJSONObject : 緩存中讀取 JSONObject
getJSONArray : 緩存中讀取 JSONArray
getBitmap : 緩存中讀取 Bitmap
getDrawable : 緩存中讀取 Drawable
getParcelable : 緩存中讀取 Parcelable
getSerializable : 緩存中讀取 Serializable
getCacheDiskSize : 獲取磁盤(pán)緩存大小
getCacheDiskCount : 獲取磁盤(pán)緩存?zhèn)€數(shù)
getCacheMemoryCount : 獲取內(nèi)存緩存?zhèn)€數(shù)
remove : 根據(jù)鍵值移除緩存
clear : 清除所有緩存
13. 二級(jí)緩存相關(guān) -> CacheDoubleUtils.java -> Test
getInstance : 獲取緩存實(shí)例
Instance.put : 緩存中寫(xiě)入數(shù)據(jù)
Instance.getBytes : 緩存中讀取字節(jié)數(shù)組
Instance.getString : 緩存中讀取 String
Instance.getJSONObject : 緩存中讀取 JSONObject
Instance.getJSONArray : 緩存中讀取 JSONArray
Instance.getBitmap : 緩存中讀取 Bitmap
Instance.getDrawable : 緩存中讀取 Drawable
Instance.getParcelable : 緩存中讀取 Parcelable
Instance.getSerializable : 緩存中讀取 Serializable
Instance.getCacheDiskSize : 獲取磁盤(pán)緩存大小
Instance.getCacheDiskCount : 獲取磁盤(pán)緩存?zhèn)€數(shù)
Instance.getCacheMemoryCount: 獲取內(nèi)存緩存?zhèn)€數(shù)
Instance.remove : 根據(jù)鍵值移除緩存
Instance.clear : 清除所有緩存
14. 內(nèi)存緩存相關(guān) -> CacheMemoryStaticUtils.java -> Test
setDefaultCacheMemoryUtils: 設(shè)置默認(rèn)內(nèi)存緩存實(shí)例
put : 緩存中寫(xiě)入數(shù)據(jù)
get : 緩存中讀取字節(jié)數(shù)組
getCacheCount : 獲取緩存?zhèn)€數(shù)
remove : 根據(jù)鍵值移除緩存
clear : 清除所有緩存
15. 內(nèi)存緩存相關(guān) -> CacheMemoryUtils.java -> Test
getInstance : 獲取緩存實(shí)例
Instance.put : 緩存中寫(xiě)入數(shù)據(jù)
Instance.get : 緩存中讀取字節(jié)數(shù)組
Instance.getCacheCount: 獲取緩存?zhèn)€數(shù)
Instance.remove : 根據(jù)鍵值移除緩存
Instance.clear : 清除所有緩存
16. 清除相關(guān) -> CleanUtils.java -> Demo
cleanInternalCache : 清除內(nèi)部緩存
cleanInternalFiles : 清除內(nèi)部文件
cleanInternalDbs : 清除內(nèi)部數(shù)據(jù)庫(kù)
cleanInternalDbByName: 根據(jù)名稱清除數(shù)據(jù)庫(kù)
cleanInternalSp : 清除內(nèi)部 SP
cleanExternalCache : 清除外部緩存
cleanCustomDir : 清除自定義目錄下的文件
17. 點(diǎn)擊相關(guān) -> ClickUtils.java -> Demo
applyPressedViewScale : 應(yīng)用點(diǎn)擊后對(duì)視圖縮放
applyPressedViewAlpha : 應(yīng)用點(diǎn)擊后對(duì)視圖改變透明度
applyPressedBgAlpha : 應(yīng)用點(diǎn)擊后對(duì)背景改變透明度
applyPressedBgDark : 應(yīng)用點(diǎn)擊后對(duì)背景加深
applySingleDebouncing : 對(duì)單視圖應(yīng)用防抖點(diǎn)擊
applyGlobalDebouncing : 對(duì)所有設(shè)置 GlobalDebouncing 的視圖應(yīng)用防抖點(diǎn)擊
expandClickArea : 擴(kuò)大點(diǎn)擊區(qū)域
back2HomeFriendly : 友好地返回桌面
ClickUtils#OnDebouncingClickListener: 防抖點(diǎn)擊監(jiān)聽(tīng)器
ClickUtils#OnMultiClickListener : 連續(xù)點(diǎn)擊監(jiān)聽(tīng)器
18. 剪貼板相關(guān) -> ClipboardUtils.java -> Demo
copyText : 復(fù)制文本到剪貼板
getText : 獲取剪貼板的文本
copyUri : 復(fù)制 uri 到剪貼板
getUri : 獲取剪貼板的 uri
copyIntent : 復(fù)制意圖到剪貼板
getIntent : 獲取剪貼板的意圖
addChangedListener : 增加剪貼板監(jiān)聽(tīng)器
removeChangedListener: 移除剪貼板監(jiān)聽(tīng)器
19. 克隆相關(guān) -> CloneUtils.java -> Test
deepClone: 深度克隆
20.關(guān)閉相關(guān) -> CloseUtils.java
closeIO : 關(guān)閉 IO
closeIOQuietly: 安靜關(guān)閉 IO
21. 集合相關(guān) -> CollectionUtils.java -> Test
newUnmodifiableList[NotNull]: 新建只讀[非空]鏈表
newArrayList[NotNull] : 新建數(shù)組型[非空]鏈表
newLinkedList[NotNull] : 新建指針型[非空]鏈表
newHashSet[NotNull] : 新建哈希[非空]集合
newTreeSet[NotNull] : 新建有序[非空]集合
newSynchronizedCollection : 新建同步集合
newUnmodifiableCollection : 新建只讀集合
union : 獲取并集
intersection : 獲取交集
disjunction : 獲取并集減交集
subtract : 獲取差集
containsAny : 判斷是否有交集
getCardinalityMap : 獲取集合中所有元素的基數(shù)
isSubCollection : 是否子集
isProperSubCollection : 是否真子集
isEqualCollection : 判斷集合是否相等
cardinality : 獲取集合中元素的基數(shù)
find : 查找第一個(gè)符合條件的元素
forAllDo : 對(duì)所有元素做操作
filter : 刪除原集合中不符合條件的元素
select : 查找出所有符合條件的元素并返回新集合
selectRejected : 查找出所有不符合條件的元素并返回新集合
transform : 對(duì)原集合進(jìn)行轉(zhuǎn)變
collect : 轉(zhuǎn)變?yōu)樾碌募?br> countMatches : 查找到匹配的元素個(gè)數(shù)
exists : 判斷集合是否存在符合條件的元素
addIgnoreNull : 增加元素如果不為空
addAll : 增加多個(gè)元素
get : 獲取集合元素
size : 獲取集合個(gè)數(shù)
sizeIsEmpty : 判斷個(gè)數(shù)是否為零
isEmpty : 判斷是否為空
isNotEmpty : 判斷是否非空
retainAll : 保留元素
removeAll : 刪除下來(lái)
toString : 集合轉(zhuǎn)為字符串
22. 顏色相關(guān) -> ColorUtils.java
getColor : 獲取顏色
setAlphaComponent: 設(shè)置顏色透明度值
setRedComponent : 設(shè)置顏色紅色值
setGreenComponent: 設(shè)置顏色綠色值
setBlueComponent : 設(shè)置顏色藍(lán)色值
string2Int : 顏色串轉(zhuǎn)顏色值
int2RgbString : 顏色值轉(zhuǎn) RGB 串
int2ArgbString : 顏色值轉(zhuǎn) ARGB 串
getRandomColor : 獲取隨機(jī)色
isLightColor : 判斷是否亮色
23. 轉(zhuǎn)換相關(guān) -> ConvertUtils.java -> Test
int2HexString, hexString2Int : int 與 hexString 互轉(zhuǎn)
bytes2Bits, bits2Bytes : bytes 與 bits 互轉(zhuǎn)
bytes2Chars, chars2Bytes : bytes 與 chars 互轉(zhuǎn)
bytes2HexString, hexString2Bytes : bytes 與 hexString 互轉(zhuǎn)
bytes2String, string2Bytes : bytes 與 string 互轉(zhuǎn)
bytes2JSONObject, jsonObject2Bytes : bytes 與 JSONObject 互轉(zhuǎn)
bytes2JSONArray, jsonArray2Bytes : bytes 與 JSONArray 互轉(zhuǎn)
bytes2Parcelable, parcelable2Bytes : bytes 與 Parcelable 互轉(zhuǎn)
bytes2Object, serializable2Bytes : bytes 與 Object 互轉(zhuǎn)
bytes2Bitmap, bitmap2Bytes : bytes 與 Bitmap 互轉(zhuǎn)
memorySize2Byte, byte2MemorySize : 以 unit 為單位的內(nèi)存大小與字節(jié)數(shù)互轉(zhuǎn)
byte2FitMemorySize : 字節(jié)數(shù)轉(zhuǎn)合適內(nèi)存大小
timeSpan2Millis, millis2TimeSpan : 以 unit 為單位的時(shí)間長(zhǎng)度與毫秒時(shí)間戳互轉(zhuǎn)
millis2FitTimeSpan : 毫秒時(shí)間戳轉(zhuǎn)合適時(shí)間長(zhǎng)度
input2OutputStream, output2InputStream : inputStream 與 outputStream 互轉(zhuǎn)
inputStream2Bytes, bytes2InputStream : inputStream 與 bytes 互轉(zhuǎn)
outputStream2Bytes, bytes2OutputStream : outputStream 與 bytes 互轉(zhuǎn)
inputStream2String, string2InputStream : inputStream 與 string 按編碼互轉(zhuǎn)
outputStream2String, string2OutputStream: outputStream 與 string 按編碼互轉(zhuǎn)
inputStream2Lines : inputStream 轉(zhuǎn) 文本行
drawable2Bitmap, bitmap2Drawable : drawable 與 bitmap 互轉(zhuǎn)
drawable2Bytes, bytes2Drawable : drawable 與 bytes 互轉(zhuǎn)
view2Bitmap : view 轉(zhuǎn) Bitmap
dp2px, px2dp : dp 與 px 互轉(zhuǎn)
sp2px, px2sp : sp 與 px 互轉(zhuǎn)
24. 崩潰相關(guān) -> CrashUtils.java
init : 初始化
CrashInfo.addExtraHead: 增加額外頭部
CrashInfo.getThrowable: 獲取崩潰異常
CrashInfo.toString : 獲取崩潰信息
25. 防抖相關(guān) -> DebouncingUtils.java
isValid: 是否有效
26. 設(shè)備相關(guān) -> DeviceUtils.java -> Demo
isDeviceRooted : 判斷設(shè)備是否 rooted
isAdbEnabled : 判斷設(shè)備 ADB 是否可用
getSDKVersionName : 獲取設(shè)備系統(tǒng)版本號(hào)
getSDKVersionCode : 獲取設(shè)備系統(tǒng)版本碼
getAndroidID : 獲取設(shè)備 AndroidID
getMacAddress : 獲取設(shè)備 MAC 地址
getManufacturer : 獲取設(shè)備廠商
getModel : 獲取設(shè)備型號(hào)
getABIs : 獲取設(shè)備 ABIs
isTablet : 判斷是否是平板
isEmulator : 判斷是否是模擬器
isDevelopmentSettingsEnabled: 開(kāi)發(fā)者選項(xiàng)是否打開(kāi)
getUniqueDeviceId : 獲取唯一設(shè)備 ID
isSameDevice : 判斷是否同一設(shè)備
27. 閃光燈相關(guān) -> FlashlightUtils.java -> Demo
isFlashlightEnable : 判斷設(shè)備是否支持閃光燈
isFlashlightOn : 判斷閃光燈是否打開(kāi)
setFlashlightStatus: 設(shè)置閃光燈狀態(tài)
destroy : 銷(xiāo)毀
28. 編碼解碼相關(guān) -> EncodeUtils.java -> Test
urlEncode : URL 編碼
urlDecode : URL 解碼
base64Encode : Base64 編碼
base64Encode2String: Base64 編碼
base64Decode : Base64 解碼
htmlEncode : Html 編碼
htmlDecode : Html 解碼
binaryEncode : 二進(jìn)制編碼
binaryDecode : 二進(jìn)制解碼
29. 加密解密相關(guān) -> EncryptUtils.java -> Test
encryptMD2, encryptMD2ToString : MD2 加密
encryptMD5, encryptMD5ToString : MD5 加密
encryptMD5File, encryptMD5File2String : MD5 加密文件
encryptSHA1, encryptSHA1ToString : SHA1 加密
encryptSHA224, encryptSHA224ToString : SHA224 加密
encryptSHA256, encryptSHA256ToString : SHA256 加密
encryptSHA384, encryptSHA384ToString : SHA384 加密
encryptSHA512, encryptSHA512ToString : SHA512 加密
encryptHmacMD5, encryptHmacMD5ToString : HmacMD5 加密
encryptHmacSHA1, encryptHmacSHA1ToString : HmacSHA1 加密
encryptHmacSHA224, encryptHmacSHA224ToString : HmacSHA224 加密
encryptHmacSHA256, encryptHmacSHA256ToString : HmacSHA256 加密
encryptHmacSHA384, encryptHmacSHA384ToString : HmacSHA384 加密
encryptHmacSHA512, encryptHmacSHA512ToString : HmacSHA512 加密
encryptDES, encryptDES2HexString, encryptDES2Base64 : DES 加密
decryptDES, decryptHexStringDES, decryptBase64DES : DES 解密
encrypt3DES, encrypt3DES2HexString, encrypt3DES2Base64: 3DES 加密
decrypt3DES, decryptHexString3DES, decryptBase64_3DES : 3DES 解密
encryptAES, encryptAES2HexString, encryptAES2Base64 : AES 加密
decryptAES, decryptHexStringAES, decryptBase64AES : AES 解密
encryptRSA, encryptRSA2HexString, encryptRSA2Base64 : RSA 加密
decryptRSA, decryptHexStringRSA, decryptBase64RSA : RSA 解密
rc4 : rc4 加解密
30. 文件相關(guān) -> FileIOUtils.java -> Test
writeFileFromIS : 將輸入流寫(xiě)入文件
writeFileFromBytesByStream : 將字節(jié)數(shù)組寫(xiě)入文件
writeFileFromBytesByChannel: 將字節(jié)數(shù)組寫(xiě)入文件
writeFileFromBytesByMap : 將字節(jié)數(shù)組寫(xiě)入文件
writeFileFromString : 將字符串寫(xiě)入文件
readFile2List : 讀取文件到字符串鏈表中
readFile2String : 讀取文件到字符串中
readFile2BytesByStream : 讀取文件到字節(jié)數(shù)組中
readFile2BytesByChannel : 讀取文件到字節(jié)數(shù)組中
readFile2BytesByMap : 讀取文件到字節(jié)數(shù)組中
setBufferSize : 設(shè)置緩沖區(qū)尺寸
31. 文件相關(guān) -> FileUtils.java -> Test
getFileByPath : 根據(jù)文件路徑獲取文件
isFileExists : 判斷文件是否存在
rename : 重命名文件
isDir : 判斷是否是目錄
isFile : 判斷是否是文件
createOrExistsDir : 判斷目錄是否存在颅拦,不存在則判斷是否創(chuàng)建成功
createOrExistsFile : 判斷文件是否存在教藻,不存在則判斷是否創(chuàng)建成功
createFileByDeleteOldFile : 判斷文件是否存在,存在則在創(chuàng)建之前刪除
copy : 復(fù)制文件或目錄
move : 移動(dòng)文件或目錄
delete : 刪除文件或目錄
deleteAllInDir : 刪除目錄下所有內(nèi)容
deleteFilesInDir : 刪除目錄下所有文件
deleteFilesInDirWithFilter: 刪除目錄下所有過(guò)濾的文件
listFilesInDir : 獲取目錄下所有文件
listFilesInDirWithFilter : 獲取目錄下所有過(guò)濾的文件
getFileLastModified : 獲取文件最后修改的毫秒時(shí)間戳
getFileCharsetSimple : 簡(jiǎn)單獲取文件編碼格式
getFileLines : 獲取文件行數(shù)
getSize : 獲取文件或目錄大小
getLength : 獲取文件或目錄長(zhǎng)度
getFileMD5 : 獲取文件的 MD5 校驗(yàn)碼
getFileMD5ToString : 獲取文件的 MD5 校驗(yàn)碼
getDirName : 根據(jù)全路徑獲取最長(zhǎng)目錄
getFileName : 根據(jù)全路徑獲取文件名
getFileNameNoExtension : 根據(jù)全路徑獲取文件名不帶拓展名
getFileExtension : 根據(jù)全路徑獲取文件拓展名
notifySystemToScan : 通知系統(tǒng)掃描文件
getFsTotalSize : 獲取文件系統(tǒng)總大小
getFsAvailableSize : 獲取文件系統(tǒng)可用大小
32. Fragment 相關(guān) -> FragmentUtils.java -> Demo
add : 增加 fragment
show : 顯示 fragment
hide : 隱藏 fragment
showHide : 先顯示后隱藏 fragment
replace : 替換 fragment
pop : 出棧 fragment
popTo : 出棧到指定 fragment
popAll : 出棧所有 fragment
remove : 移除 fragment
removeTo : 移除到指定 fragment
removeAll : 移除所有 fragment
getTop : 獲取頂部 fragment
getTopInStack : 獲取棧中頂部 fragment
getTopShow : 獲取頂部可見(jiàn) fragment
getTopShowInStack : 獲取棧中頂部可見(jiàn) fragment
getFragments : 獲取同級(jí)別的 fragment
getFragmentsInStack : 獲取同級(jí)別棧中的 fragment
getAllFragments : 獲取所有 fragment
getAllFragmentsInStack: 獲取棧中所有 fragment
findFragment : 查找 fragment
dispatchBackPress : 處理 fragment 回退鍵
setBackgroundColor : 設(shè)置背景色
setBackgroundResource : 設(shè)置背景資源
setBackground : 設(shè)置背景
33. Gson 相關(guān) -> GsonUtils.java -> Test
setGsonDelegate: 設(shè)置默認(rèn)的 Gson 代理對(duì)象
setGson : 設(shè)置 Gson 對(duì)象
getGson : 獲取 Gson 對(duì)象
toJson : 對(duì)象轉(zhuǎn) Json 串
fromJson : Json 串轉(zhuǎn)對(duì)象
getListType : 獲取鏈表類型
getSetType : 獲取集合類型
getMapType : 獲取字典類型
getArrayType : 獲取數(shù)組類型
getType : 獲取類型
34. 圖片相關(guān) -> ImageUtils.java -> Demo
bitmap2Bytes, bytes2Bitmap : bitmap 與 bytes 互轉(zhuǎn)
drawable2Bitmap, bitmap2Drawable: drawable 與 bitmap 互轉(zhuǎn)
drawable2Bytes, bytes2Drawable : drawable 與 bytes 互轉(zhuǎn)
view2Bitmap : view 轉(zhuǎn) bitmap
getBitmap : 獲取 bitmap
scale : 縮放圖片
clip : 裁剪圖片
skew : 傾斜圖片
rotate : 旋轉(zhuǎn)圖片
getRotateDegree : 獲取圖片旋轉(zhuǎn)角度
toRound : 轉(zhuǎn)為圓形圖片
toRoundCorner : 轉(zhuǎn)為圓角圖片
addCornerBorder : 添加圓角邊框
addCircleBorder : 添加圓形邊框
addReflection : 添加倒影
addTextWatermark : 添加文字水印
addImageWatermark : 添加圖片水印
toAlpha : 轉(zhuǎn)為 alpha 位圖
toGray : 轉(zhuǎn)為灰度圖片
fastBlur : 快速模糊
renderScriptBlur : renderScript 模糊圖片
stackBlur : stack 模糊圖片
save : 保存圖片
save2Album : 保存圖片到相冊(cè)
isImage : 根據(jù)文件名判斷文件是否為圖片
getImageType : 獲取圖片類型
compressByScale : 按縮放壓縮
compressByQuality : 按質(zhì)量壓縮
compressBySampleSize : 按采樣大小壓縮
getSize : 獲取圖片尺寸
35. 意圖相關(guān) -> IntentUtils.java
isIntentAvailable : 判斷意圖是否可用
getInstallAppIntent : 獲取安裝 App(支持 6.0)的意圖
getUninstallAppIntent : 獲取卸載 App 的意圖
getLaunchAppIntent : 獲取打開(kāi) App 的意圖
getLaunchAppDetailsSettingsIntent: 獲取 App 具體設(shè)置的意圖
getShareTextIntent : 獲取分享文本的意圖
getShareImageIntent : 獲取分享圖片的意圖
getShareTextImageIntent : 獲取分享圖文的意圖
getComponentIntent : 獲取其他應(yīng)用組件的意圖
getShutdownIntent : 獲取關(guān)機(jī)的意圖
getCaptureIntent : 獲取拍照的意圖
36. 鍵盤(pán)相關(guān) -> KeyboardUtils.java -> Demo
showSoftInput : 顯示軟鍵盤(pán)
hideSoftInput : 隱藏軟鍵盤(pán)
toggleSoftInput : 切換鍵盤(pán)顯示與否狀態(tài)
isSoftInputVisible : 判斷軟鍵盤(pán)是否可見(jiàn)
registerSoftInputChangedListener : 注冊(cè)軟鍵盤(pán)改變監(jiān)聽(tīng)器
unregisterSoftInputChangedListener: 注銷(xiāo)軟鍵盤(pán)改變監(jiān)聽(tīng)器
fixAndroidBug5497 : 修復(fù)安卓 5497 BUG
fixSoftInputLeaks : 修復(fù)軟鍵盤(pán)內(nèi)存泄漏
clickBlankArea2HideSoftInput : 點(diǎn)擊屏幕空白區(qū)域隱藏軟鍵盤(pán)
37. 語(yǔ)言相關(guān) -> LanguageUtils.java -> Demo
applySystemLanguage : 設(shè)置系統(tǒng)語(yǔ)言
applyLanguage : 設(shè)置語(yǔ)言
isAppliedLanguage : 是否設(shè)置了語(yǔ)言
getAppliedLanguage : 獲取設(shè)置的語(yǔ)言
getContextLanguage : 獲取上下文的語(yǔ)言
getAppContextLanguage : 獲取應(yīng)用上下文的語(yǔ)言
getSystemLanguage : 獲取系統(tǒng)的語(yǔ)言
updateAppContextLanguage: 更新應(yīng)用上下文語(yǔ)言
attachBaseContext : 如果設(shè)置語(yǔ)言無(wú)效則在 Activity#attachBaseContext 調(diào)用它
38. 日志相關(guān) -> LogUtils.java -> Demo
getConfig : 獲取 log 配置
Config.setLogSwitch : 設(shè)置 log 總開(kāi)關(guān)
Config.setConsoleSwitch : 設(shè)置 log 控制臺(tái)開(kāi)關(guān)
Config.setGlobalTag : 設(shè)置 log 全局 tag
Config.setLogHeadSwitch : 設(shè)置 log 頭部信息開(kāi)關(guān)
Config.setLog2FileSwitch : 設(shè)置 log 文件開(kāi)關(guān)
Config.setDir : 設(shè)置 log 文件存儲(chǔ)目錄
Config.setFilePrefix : 設(shè)置 log 文件前綴
Config.setBorderSwitch : 設(shè)置 log 邊框開(kāi)關(guān)
Config.setSingleTagSwitch : 設(shè)置 log 單一 tag 開(kāi)關(guān)(為美化 AS 3.1 的 Logcat)
Config.setConsoleFilter : 設(shè)置 log 控制臺(tái)過(guò)濾器
Config.setFileFilter : 設(shè)置 log 文件過(guò)濾器
Config.setStackDeep : 設(shè)置 log 棧深度
Config.setStackOffset : 設(shè)置 log 棧偏移
Config.setSaveDays : 設(shè)置 log 可保留天數(shù)
Config.addFormatter : 增加 log 格式化器
Config.setFileWriter : 設(shè)置文件寫(xiě)入器
Config.setOnConsoleOutputListener: 設(shè)置控制臺(tái)輸出監(jiān)聽(tīng)器
Config.setOnFileOutputListener : 設(shè)置文件輸出監(jiān)聽(tīng)器
Config.addFileExtraHead : 增加 log 文件頭部
log : 自定義 tag 的 type 日志
v : tag 為類名的 Verbose 日志
vTag : 自定義 tag 的 Verbose 日志
d : tag 為類名的 Debug 日志
dTag : 自定義 tag 的 Debug 日志
i : tag 為類名的 Info 日志
iTag : 自定義 tag 的 Info 日志
w : tag 為類名的 Warn 日志
wTag : 自定義 tag 的 Warn 日志
e : tag 為類名的 Error 日志
eTag : 自定義 tag 的 Error 日志
a : tag 為類名的 Assert 日志
aTag : 自定義 tag 的 Assert 日志
file : log 到文件
json : log 字符串之 json
xml : log 字符串之 xml
getCurrentLogFilePath : 獲取當(dāng)前日志文件路徑
getLogFiles : 獲取所有日志
39. Map 相關(guān) -> MapUtils.java -> Test
newUnmodifiableMap: 創(chuàng)建 UnmodifiableMap
newHashMap : 創(chuàng)建 HashMap
newLinkedHashMap : 創(chuàng)建 LinkedHashMap
newTreeMap : 創(chuàng)建 TreeMap
newHashTable : 創(chuàng)建 HashTable
isEmpty : 判斷 Map 是否為空
isNotEmpty : 判斷 Map 是否非空
size : 獲取 Map 元素個(gè)數(shù)
forAllDo : 對(duì)所有元素做操作
transform : 對(duì) Map 做轉(zhuǎn)變
toString : Map 轉(zhuǎn)為字符串
40. MetaData 相關(guān) -> MetaDataUtils.java -> Demo
getMetaDataInApp : 獲取 application 的 meta-data 值
getMetaDataInActivity: 獲取 activity 的 meta-data 值
getMetaDataInService : 獲取 service 的 meta-data 值
getMetaDataInReceiver: 獲取 receiver 的 meta-data 值
41. 網(wǎng)絡(luò)相關(guān) -> NetworkUtils.java -> Demo
openWirelessSettings : 打開(kāi)網(wǎng)絡(luò)設(shè)置界面
isConnected : 判斷網(wǎng)絡(luò)是否連接
isAvailable[Async] : 判斷網(wǎng)絡(luò)是否可用
isAvailableByPing[Async] : 用 ping 判斷網(wǎng)絡(luò)是否可用
isAvailableByDns[Async] : 用 DNS 判斷網(wǎng)絡(luò)是否可用
getMobileDataEnabled : 判斷移動(dòng)數(shù)據(jù)是否打開(kāi)
isMobileData : 判斷網(wǎng)絡(luò)是否是移動(dòng)數(shù)據(jù)
is4G : 判斷網(wǎng)絡(luò)是否是 4G
getWifiEnabled : 判斷 wifi 是否打開(kāi)
setWifiEnabled : 打開(kāi)或關(guān)閉 wifi
isWifiConnected : 判斷 wifi 是否連接狀態(tài)
isWifiAvailable[Async] : 判斷 wifi 數(shù)據(jù)是否可用
getNetworkOperatorName : 獲取移動(dòng)網(wǎng)絡(luò)運(yùn)營(yíng)商名稱
getNetworkType : 獲取當(dāng)前網(wǎng)絡(luò)類型
getIPAddress[Async] : 獲取 IP 地址
getDomainAddress[Async] : 獲取域名 IP 地址
getIpAddressByWifi : 根據(jù) WiFi 獲取網(wǎng)絡(luò) IP 地址
getGatewayByWifi : 根據(jù) WiFi 獲取網(wǎng)關(guān) IP 地址
getNetMaskByWifi : 根據(jù) WiFi 獲取子網(wǎng)掩碼 IP 地址
getServerAddressByWifi : 根據(jù) WiFi 獲取服務(wù)端 IP 地址
registerNetworkStatusChangedListener : 注冊(cè)網(wǎng)絡(luò)狀態(tài)改變監(jiān)聽(tīng)器
isRegisteredNetworkStatusChangedListener: 判斷是否注冊(cè)網(wǎng)絡(luò)狀態(tài)改變監(jiān)聽(tīng)器
unregisterNetworkStatusChangedListener : 注銷(xiāo)網(wǎng)絡(luò)狀態(tài)改變監(jiān)聽(tīng)器
getWifiScanResult : 獲取 WIFI 列表
addOnWifiChangedConsumer : 增加 WIFI 改變監(jiān)聽(tīng)
removeOnWifiChangedConsumer : 移除 WIFI 改變監(jiān)聽(tīng)
42. 通知相關(guān) -> NotificationUtils.java -> Demo
areNotificationsEnabled : 判斷通知是否可用
notify : 發(fā)送通知
cancel : 取消通知
cancelAll : 取消所有通知
setNotificationBarVisibility: 設(shè)置通知欄是否可見(jiàn)
43. 數(shù)字相關(guān) -> NumberUtils.java -> Test
format : 格式化
float2Double: 浮點(diǎn)轉(zhuǎn)雙精度
44. 對(duì)象相關(guān) -> ObjectUtils.java -> Test
isEmpty : 判斷對(duì)象是否為空
isNotEmpty : 判斷對(duì)象是否非空
equals : 判斷對(duì)象是否相等
compare : 比較對(duì)象大小
requireNonNull(s): 要求對(duì)象非空
getOrDefault : 獲取非空或默認(rèn)對(duì)象
toString : 轉(zhuǎn)字符串
hashCode(s) : 獲取對(duì)象哈希值
45. 路徑相關(guān) -> PathUtils.java -> Demo
join : 連接路徑
getRootPath : 獲取根路徑
getDataPath : 獲取數(shù)據(jù)路徑
getDownloadCachePath : 獲取下載緩存路徑
getInternalAppDataPath : 獲取內(nèi)存應(yīng)用數(shù)據(jù)路徑
getInternalAppCodeCacheDir : 獲取內(nèi)存應(yīng)用代碼緩存路徑
getInternalAppCachePath : 獲取內(nèi)存應(yīng)用緩存路徑
getInternalAppDbsPath : 獲取內(nèi)存應(yīng)用數(shù)據(jù)庫(kù)路徑
getInternalAppDbPath : 獲取內(nèi)存應(yīng)用數(shù)據(jù)庫(kù)路徑
getInternalAppFilesPath : 獲取內(nèi)存應(yīng)用文件路徑
getInternalAppSpPath : 獲取內(nèi)存應(yīng)用 SP 路徑
getInternalAppNoBackupFilesPath: 獲取內(nèi)存應(yīng)用未備份文件路徑
getExternalStoragePath : 獲取外存路徑
getExternalMusicPath : 獲取外存音樂(lè)路徑
getExternalPodcastsPath : 獲取外存播客路徑
getExternalRingtonesPath : 獲取外存鈴聲路徑
getExternalAlarmsPath : 獲取外存鬧鈴路徑
getExternalNotificationsPath : 獲取外存通知路徑
getExternalPicturesPath : 獲取外存圖片路徑
getExternalMoviesPath : 獲取外存影片路徑
getExternalDownloadsPath : 獲取外存下載路徑
getExternalDcimPath : 獲取外存數(shù)碼相機(jī)圖片路徑
getExternalDocumentsPath : 獲取外存文檔路徑
getExternalAppDataPath : 獲取外存應(yīng)用數(shù)據(jù)路徑
getExternalAppCachePath : 獲取外存應(yīng)用緩存路徑
getExternalAppFilesPath : 獲取外存應(yīng)用文件路徑
getExternalAppMusicPath : 獲取外存應(yīng)用音樂(lè)路徑
getExternalAppPodcastsPath : 獲取外存應(yīng)用播客路徑
getExternalAppRingtonesPath : 獲取外存應(yīng)用鈴聲路徑
getExternalAppAlarmsPath : 獲取外存應(yīng)用鬧鈴路徑
getExternalAppNotificationsPath: 獲取外存應(yīng)用通知路徑
getExternalAppPicturesPath : 獲取外存應(yīng)用圖片路徑
getExternalAppMoviesPath : 獲取外存應(yīng)用影片路徑
getExternalAppDownloadPath : 獲取外存應(yīng)用下載路徑
getExternalAppDcimPath : 獲取外存應(yīng)用數(shù)碼相機(jī)圖片路徑
getExternalAppDocumentsPath : 獲取外存應(yīng)用文檔路徑
getExternalAppObbPath : 獲取外存應(yīng)用 OBB 路徑
getRootPathExternalFirst : 優(yōu)先獲取外部根路徑
getAppDataPathExternalFirst : 優(yōu)先獲取外部數(shù)據(jù)路徑
getFilesPathExternalFirst : 優(yōu)先獲取外部文件路徑
getCachePathExternalFirst : 優(yōu)先獲取外部緩存路徑
46. 權(quán)限相關(guān) -> PermissionUtils.java -> Demo
permission : 設(shè)置請(qǐng)求權(quán)限
permissionGroup : 設(shè)置請(qǐng)求權(quán)限組
permission.explain : 設(shè)置權(quán)限請(qǐng)求前的解釋
permission.rationale : 設(shè)置拒絕權(quán)限后再次請(qǐng)求的回調(diào)接口
permission.callback : 設(shè)置回調(diào)
permission.theme : 設(shè)置主題
permission.request : 開(kāi)始請(qǐng)求
getPermissions : 獲取應(yīng)用權(quán)限
isGranted : 判斷權(quán)限是否被授予
isGrantedWriteSettings : 判斷修改系統(tǒng)權(quán)限是否被授予
requestWriteSettings : 申請(qǐng)修改系統(tǒng)權(quán)限
isGrantedDrawOverlays : 判斷懸浮窗權(quán)限是否被授予
requestDrawOverlays : 申請(qǐng)懸浮窗權(quán)限
launchAppDetailsSettings: 打開(kāi)應(yīng)用具體設(shè)置
47. 手機(jī)相關(guān) -> PhoneUtils.java -> Demo
isPhone : 判斷設(shè)備是否是手機(jī)
getDeviceId : 獲取設(shè)備碼
getSerial : 獲取序列號(hào)
getIMEI : 獲取 IMEI 碼
getMEID : 獲取 MEID 碼
getIMSI : 獲取 IMSI 碼
getPhoneType : 獲取移動(dòng)終端類型
isSimCardReady : 判斷 sim 卡是否準(zhǔn)備好
getSimOperatorName : 獲取 Sim 卡運(yùn)營(yíng)商名稱
getSimOperatorByMnc: 獲取 Sim 卡運(yùn)營(yíng)商名稱
dial : 跳至撥號(hào)界面
call : 撥打 phoneNumber
sendSms : 跳至發(fā)送短信界面
48. 進(jìn)程相關(guān) -> ProcessUtils.java -> Demo
getForegroundProcessName : 獲取前臺(tái)線程包名
killAllBackgroundProcesses: 殺死所有的后臺(tái)服務(wù)進(jìn)程
killBackgroundProcesses : 殺死后臺(tái)服務(wù)進(jìn)程
isMainProcess : 判斷是否運(yùn)行在主進(jìn)程
getCurrentProcessName : 獲取當(dāng)前進(jìn)程名稱
49. 反射相關(guān) -> ReflectUtils.java -> Test
reflect : 設(shè)置要反射的類
newInstance: 實(shí)例化反射對(duì)象
field : 設(shè)置反射的字段
method : 設(shè)置反射的方法
get : 獲取反射想要獲取的
50. 正則相關(guān) -> RegexUtils.java -> Test
isMobileSimple : 簡(jiǎn)單驗(yàn)證手機(jī)號(hào)
isMobileExact : 精確驗(yàn)證手機(jī)號(hào)
isTel : 驗(yàn)證電話號(hào)碼
isIDCard15 : 驗(yàn)證身份證號(hào)碼 15 位
isIDCard18 : 簡(jiǎn)單驗(yàn)證身份證號(hào)碼 18 位
isIDCard18Exact : 精確驗(yàn)證身份證號(hào)碼 18 位
isEmail : 驗(yàn)證郵箱
isURL : 驗(yàn)證 URL
isZh : 驗(yàn)證漢字
isUsername : 驗(yàn)證用戶名
isDate : 驗(yàn)證 yyyy-MM-dd 格式的日期校驗(yàn)广匙,已考慮平閏年
isIP : 驗(yàn)證 IP 地址
isMatch : 判斷是否匹配正則
getMatches : 獲取正則匹配的部分
getSplits : 獲取正則匹配分組
getReplaceFirst : 替換正則匹配的第一部分
getReplaceAll : 替換所有正則匹配的部分
RegexConstants.REGEX_DOUBLE_BYTE_CHAR : 雙字節(jié)
RegexConstants.REGEX_BLANK_LINE : 空行
RegexConstants.REGEX_QQ_NUM : QQ 號(hào)
RegexConstants.REGEX_CHINA_POSTAL_CODE : 郵編
RegexConstants.REGEX_INTEGER : 整數(shù)
RegexConstants.REGEX_POSITIVE_INTEGER : 正整數(shù)
RegexConstants.REGEX_NEGATIVE_INTEGER : 負(fù)整數(shù)
RegexConstants.REGEX_NOT_NEGATIVE_INTEGER: 非負(fù)整數(shù)
RegexConstants.REGEX_NOT_POSITIVE_INTEGER: 非正整數(shù)
RegexConstants.REGEX_FLOAT : 浮點(diǎn)數(shù)
RegexConstants.REGEX_POSITIVE_FLOAT : 正浮點(diǎn)數(shù)
RegexConstants.REGEX_NEGATIVE_FLOAT : 負(fù)浮點(diǎn)數(shù)
RegexConstants.REGEX_NOT_NEGATIVE_FLOAT : 非負(fù)浮點(diǎn)數(shù)
RegexConstants.REGEX_NOT_POSITIVE_FLOAT : 非正浮點(diǎn)數(shù)
51. 資源相關(guān) -> ResourceUtils.java -> Demo
getDrawable : 獲取 Drawable
getIdByName : 根據(jù)名字獲取 ID
getStringIdByName : 根據(jù)名字獲取 string ID
getColorIdByName : 根據(jù)名字獲取 color ID
getDimenIdByName : 根據(jù)名字獲取 dimen ID
getDrawableIdByName: 根據(jù)名字獲取 dimen ID
getMipmapIdByName : 根據(jù)名字獲取 mipmap ID
getLayoutIdByName : 根據(jù)名字獲取 layout ID
getStyleIdByName : 根據(jù)名字獲取 style ID
getAnimIdByName : 根據(jù)名字獲取 anim ID
getMenuIdByName : 根據(jù)名字獲取 menu ID
copyFileFromAssets : 從 assets 中拷貝文件
readAssets2String : 從 assets 中讀取字符串
readAssets2List : 從 assets 中按行讀取字符串
copyFileFromRaw : 從 raw 中拷貝文件
readRaw2String : 從 raw 中讀取字符串
readRaw2List : 從 raw 中按行讀取字符串
52. Rom 相關(guān) -> RomUtils.java -> Demo
isHuawei : 是否華為
isVivo : 是否 VIVO
isXiaomi : 是否小米
isOppo : 是否 OPPO
isLeeco : 是否樂(lè)視
is360 : 是否 360
isZte : 是否中興
isOneplus : 是否一加
isNubia : 是否努比亞
isCoolpad : 是否酷派
isLg : 是否 LG
isGoogle : 是否谷歌
isSamsung : 是否三星
isMeizu : 是否魅族
isLenovo : 是否聯(lián)想
isSmartisan: 是否錘子
isHtc : 是否 HTC
isSony : 是否索尼
isGionee : 是否金立
isMotorola : 是否摩托羅拉
getRomInfo : 獲取 ROM 信息
53.屏幕相關(guān) -> ScreenUtils.java -> Demo
getScreenWidth : 獲取屏幕的寬度(單位:px)
getScreenHeight : 獲取屏幕的高度(單位:px)
getAppScreenWidth : 獲取應(yīng)用屏幕的寬度(單位:px)
getAppScreenHeight : 獲取應(yīng)用屏幕的高度(單位:px)
getScreenDensity : 獲取屏幕密度
getScreenDensityDpi: 獲取屏幕密度 DPI
setFullScreen : 設(shè)置屏幕為全屏
setNonFullScreen : 設(shè)置屏幕為非全屏
toggleFullScreen : 切換屏幕為全屏與否狀態(tài)
isFullScreen : 判斷屏幕是否為全屏
setLandscape : 設(shè)置屏幕為橫屏
setPortrait : 設(shè)置屏幕為豎屏
isLandscape : 判斷是否橫屏
isPortrait : 判斷是否豎屏
getScreenRotation : 獲取屏幕旋轉(zhuǎn)角度
screenShot : 截屏
isScreenLock : 判斷是否鎖屏
setSleepDuration : 設(shè)置進(jìn)入休眠時(shí)長(zhǎng)
getSleepDuration : 獲取進(jìn)入休眠時(shí)長(zhǎng)
54. 時(shí)間相關(guān) -> TimeUtils.java -> Test
millis2String : 將時(shí)間戳轉(zhuǎn)為時(shí)間字符串
string2Millis : 將時(shí)間字符串轉(zhuǎn)為時(shí)間戳
string2Date : 將時(shí)間字符串轉(zhuǎn)為 Date 類型
date2String : 將 Date 類型轉(zhuǎn)為時(shí)間字符串
date2Millis : 將 Date 類型轉(zhuǎn)為時(shí)間戳
millis2Date : 將時(shí)間戳轉(zhuǎn)為 Date 類型
getTimeSpan : 獲取兩個(gè)時(shí)間差(單位:unit)
getFitTimeSpan : 獲取合適型兩個(gè)時(shí)間差
getNowMills : 獲取當(dāng)前毫秒時(shí)間戳
getNowString : 獲取當(dāng)前時(shí)間字符串
getNowDate : 獲取當(dāng)前 Date
getTimeSpanByNow : 獲取與當(dāng)前時(shí)間的差(單位:unit)
getFitTimeSpanByNow : 獲取合適型與當(dāng)前時(shí)間的差
getFriendlyTimeSpanByNow: 獲取友好型與當(dāng)前時(shí)間的差
getMillis : 獲取與給定時(shí)間等于時(shí)間差的時(shí)間戳
getString : 獲取與給定時(shí)間等于時(shí)間差的時(shí)間字符串
getDate : 獲取與給定時(shí)間等于時(shí)間差的 Date
getMillisByNow : 獲取與當(dāng)前時(shí)間等于時(shí)間差的時(shí)間戳
getStringByNow : 獲取與當(dāng)前時(shí)間等于時(shí)間差的時(shí)間字符串
getDateByNow : 獲取與當(dāng)前時(shí)間等于時(shí)間差的 Date
isToday : 判斷是否今天
isLeapYear : 判斷是否閏年
getChineseWeek : 獲取中式星期
getUSWeek : 獲取美式式星期
getValueByCalendarField : 根據(jù)日歷字段獲取值
getChineseZodiac : 獲取生肖
getZodiac : 獲取星座
55. SD 卡相關(guān) -> SDCardUtils.java -> Demo
isSDCardEnableByEnvironment: 根據(jù) Environment 判斷 SD 卡是否可用
getSDCardPathByEnvironment : 根據(jù) Environment 獲取 SD 卡路徑
getSDCardInfo : 獲取 SD 卡信息
getMountedSDCardPath : 獲取已掛載的 SD 卡路徑
getExternalTotalSize : 獲取外置 SD 卡總大小
getExternalAvailableSize : 獲取外置 SD 卡可用大小
getInternalTotalSize : 獲取內(nèi)置 SD 卡總大小
getInternalAvailableSize : 獲取內(nèi)置 SD 卡可用大小
56. 服務(wù)相關(guān) -> ServiceUtils.java
getAllRunningServices: 獲取所有運(yùn)行的服務(wù)
startService : 啟動(dòng)服務(wù)
stopService : 停止服務(wù)
bindService : 綁定服務(wù)
unbindService : 解綁服務(wù)
isServiceRunning : 判斷服務(wù)是否運(yùn)行
57. 陰影相關(guān) -> ShadowUtils.java -> Demo
apply: 應(yīng)用陰影
58. Shell 相關(guān) -> ShellUtils.java
execCmd[Async]: 執(zhí)行命令
59. 尺寸相關(guān) -> SizeUtils.java
dp2px, px2dp : dp 與 px 轉(zhuǎn)換
sp2px, px2sp : sp 與 px 轉(zhuǎn)換
applyDimension : 各種單位轉(zhuǎn)換
forceGetViewSize : 在 onCreate 中獲取視圖的尺寸
measureView : 測(cè)量視圖尺寸
getMeasuredWidth : 獲取測(cè)量視圖寬度
getMeasuredHeight: 獲取測(cè)量視圖高度
60. Snackbar 相關(guān) -> SnackbarUtils.java -> Demo
with : 設(shè)置 snackbar 依賴 view
setMessage : 設(shè)置消息
setMessageColor: 設(shè)置消息顏色
setBgColor : 設(shè)置背景色
setBgResource : 設(shè)置背景資源
setDuration : 設(shè)置顯示時(shí)長(zhǎng)
setAction : 設(shè)置行為
setBottomMargin: 設(shè)置底邊距
show : 顯示 snackbar
showSuccess : 顯示預(yù)設(shè)成功的 snackbar
showWarning : 顯示預(yù)設(shè)警告的 snackbar
showError : 顯示預(yù)設(shè)錯(cuò)誤的 snackbar
dismiss : 消失 snackbar
getView : 獲取 snackbar 視圖
addView : 添加 snackbar 視圖
61. SpannableString 相關(guān) -> SpanUtils.java -> Demo
with : 設(shè)置控件
setFlag : 設(shè)置標(biāo)識(shí)
setForegroundColor: 設(shè)置前景色
setBackgroundColor: 設(shè)置背景色
setLineHeight : 設(shè)置行高
setQuoteColor : 設(shè)置引用線的顏色
setLeadingMargin : 設(shè)置縮進(jìn)
setBullet : 設(shè)置列表標(biāo)記
setFontSize : 設(shè)置字體尺寸
setFontProportion : 設(shè)置字體比例
setFontXProportion: 設(shè)置字體橫向比例
setStrikethrough : 設(shè)置刪除線
setUnderline : 設(shè)置下劃線
setSuperscript : 設(shè)置上標(biāo)
setSubscript : 設(shè)置下標(biāo)
setBold : 設(shè)置粗體
setItalic : 設(shè)置斜體
setBoldItalic : 設(shè)置粗斜體
setFontFamily : 設(shè)置字體系列
setTypeface : 設(shè)置字體
setAlign : 設(shè)置對(duì)齊
setClickSpan : 設(shè)置點(diǎn)擊事件
setUrl : 設(shè)置超鏈接
setBlur : 設(shè)置模糊
setShader : 設(shè)置著色器
setShadow : 設(shè)置陰影
setSpans : 設(shè)置樣式
append : 追加樣式字符串
appendLine : 追加一行樣式字符串
appendImage : 追加圖片
appendSpace : 追加空白
create : 創(chuàng)建樣式字符串
62. SP 相關(guān) -> SPStaticUtils.java -> Demo
setDefaultSPUtils: 設(shè)置默認(rèn) SP 實(shí)例
put : SP 中寫(xiě)入數(shù)據(jù)
getString : SP 中讀取 String
getInt : SP 中讀取 int
getLong : SP 中讀取 long
getFloat : SP 中讀取 float
getBoolean : SP 中讀取 boolean
getAll : SP 中獲取所有鍵值對(duì)
contains : SP 中是否存在該 key
remove : SP 中移除該 key
clear : SP 中清除所有數(shù)據(jù)
63. SP 相關(guān) -> SPUtils.java
getInstance : 獲取 SP 實(shí)例
Instance.put : SP 中寫(xiě)入數(shù)據(jù)
Instance.getString : SP 中讀取 String
Instance.getInt : SP 中讀取 int
Instance.getLong : SP 中讀取 long
Instance.getFloat : SP 中讀取 float
Instance.getBoolean: SP 中讀取 boolean
Instance.getAll : SP 中獲取所有鍵值對(duì)
Instance.contains : SP 中是否存在該 key
Instance.remove : SP 中移除該 key
Instance.clear : SP 中清除所有數(shù)據(jù)
64. 字符串相關(guān) -> StringUtils.java -> Test
isEmpty : 判斷字符串是否為 null 或長(zhǎng)度為 0
isTrimEmpty : 判斷字符串是否為 null 或全為空格
isSpace : 判斷字符串是否為 null 或全為空白字符
equals : 判斷兩字符串是否相等
equalsIgnoreCase: 判斷兩字符串忽略大小寫(xiě)是否相等
null2Length0 : null 轉(zhuǎn)為長(zhǎng)度為 0 的字符串
length : 返回字符串長(zhǎng)度
upperFirstLetter: 首字母大寫(xiě)
lowerFirstLetter: 首字母小寫(xiě)
reverse : 反轉(zhuǎn)字符串
toDBC : 轉(zhuǎn)化為半角字符
toSBC : 轉(zhuǎn)化為全角字符
getString : 獲取字符資源
getStringArray : 獲取字符數(shù)組資源
format : 格式化字符串
65.線程相關(guān) -> ThreadUtils.java -> Test
isMainThread : 判斷當(dāng)前是否主線程
getMainHandler : 獲取主線程 Handler
runOnUiThread : 運(yùn)行在主線程
runOnUiThreadDelayed : 延時(shí)運(yùn)行在主線程
getFixedPool : 獲取固定線程池
getSinglePool : 獲取單線程池
getCachedPool : 獲取緩沖線程池
getIoPool : 獲取 IO 線程池
getCpuPool : 獲取 CPU 線程池
executeByFixed : 在固定線程池執(zhí)行任務(wù)
executeByFixedWithDelay : 在固定線程池延時(shí)執(zhí)行任務(wù)
executeByFixedAtFixRate : 在固定線程池按固定頻率執(zhí)行任務(wù)
executeBySingle : 在單線程池執(zhí)行任務(wù)
executeBySingleWithDelay: 在單線程池延時(shí)執(zhí)行任務(wù)
executeBySingleAtFixRate: 在單線程池按固定頻率執(zhí)行任務(wù)
executeByCached : 在緩沖線程池執(zhí)行任務(wù)
executeByCachedWithDelay: 在緩沖線程池延時(shí)執(zhí)行任務(wù)
executeByCachedAtFixRate: 在緩沖線程池按固定頻率執(zhí)行任務(wù)
executeByIo : 在 IO 線程池執(zhí)行任務(wù)
executeByIoWithDelay : 在 IO 線程池延時(shí)執(zhí)行任務(wù)
executeByIoAtFixRate : 在 IO 線程池按固定頻率執(zhí)行任務(wù)
executeByCpu : 在 CPU 線程池執(zhí)行任務(wù)
executeByCpuWithDelay : 在 CPU 線程池延時(shí)執(zhí)行任務(wù)
executeByCpuAtFixRate : 在 CPU 線程池按固定頻率執(zhí)行任務(wù)
executeByCustom : 在自定義線程池執(zhí)行任務(wù)
executeByCustomWithDelay: 在自定義線程池延時(shí)執(zhí)行任務(wù)
executeByCustomAtFixRate: 在自定義線程池按固定頻率執(zhí)行任務(wù)
cancel : 取消任務(wù)的執(zhí)行
setDeliver : 設(shè)置任務(wù)結(jié)束后交付的線程
66.時(shí)間相關(guān) -> TimeUtils.java -> Test
getSafeDateFormat : 獲取安全的日期格式
millis2String : 將時(shí)間戳轉(zhuǎn)為時(shí)間字符串
string2Millis : 將時(shí)間字符串轉(zhuǎn)為時(shí)間戳
string2Date : 將時(shí)間字符串轉(zhuǎn)為 Date 類型
date2String : 將 Date 類型轉(zhuǎn)為時(shí)間字符串
date2Millis : 將 Date 類型轉(zhuǎn)為時(shí)間戳
millis2Date : 將時(shí)間戳轉(zhuǎn)為 Date 類型
getTimeSpan : 獲取兩個(gè)時(shí)間差(單位:unit)
getFitTimeSpan : 獲取合適型兩個(gè)時(shí)間差
getNowMills : 獲取當(dāng)前毫秒時(shí)間戳
getNowString : 獲取當(dāng)前時(shí)間字符串
getNowDate : 獲取當(dāng)前 Date
getTimeSpanByNow : 獲取與當(dāng)前時(shí)間的差(單位:unit)
getFitTimeSpanByNow : 獲取合適型與當(dāng)前時(shí)間的差
getFriendlyTimeSpanByNow: 獲取友好型與當(dāng)前時(shí)間的差
getMillis : 獲取與給定時(shí)間等于時(shí)間差的時(shí)間戳
getString : 獲取與給定時(shí)間等于時(shí)間差的時(shí)間字符串
getDate : 獲取與給定時(shí)間等于時(shí)間差的 Date
getMillisByNow : 獲取與當(dāng)前時(shí)間等于時(shí)間差的時(shí)間戳
getStringByNow : 獲取與當(dāng)前時(shí)間等于時(shí)間差的時(shí)間字符串
getDateByNow : 獲取與當(dāng)前時(shí)間等于時(shí)間差的 Date
isToday : 判斷是否今天
isLeapYear : 判斷是否閏年
getChineseWeek : 獲取中式星期
getUSWeek : 獲取美式式星期
isAm : 判斷是否上午
isPm : 判斷是否下午
getValueByCalendarField : 根據(jù)日歷字段獲取值
getChineseZodiac : 獲取生肖
getZodiac : 獲取星座
67. 吐司相關(guān) -> ToastUtils.java -> Demo
make : 制作吐司
make.setMode : 設(shè)置模式
make.setGravity : 設(shè)置位置
make.setBgColor : 設(shè)置背景顏色
make.setBgResource : 設(shè)置背景資源
make.setTextColor : 設(shè)置字體顏色
make.setTextSize : 設(shè)置字體大小
make.setDurationIsLong : 設(shè)置是否長(zhǎng)時(shí)間顯示
make.setLeftIcon : 設(shè)置左側(cè)圖標(biāo)
make.setTopIcon : 設(shè)置頂部圖標(biāo)
make.setRightIcon : 設(shè)置右側(cè)圖標(biāo)
make.setBottomIcon : 設(shè)置底部圖標(biāo)
make.setNotUseSystemToast: 設(shè)置不使用系統(tǒng)吐司
make.show : 顯示吐司
getDefaultMaker : 獲取默認(rèn)制作實(shí)例(控制 showShort允趟、showLong 樣式)
showShort : 顯示短時(shí)吐司
showLong : 顯示長(zhǎng)時(shí)吐司
cancel : 取消吐司顯示
68. 觸摸相關(guān) -> TouchUtils.java
setOnTouchListener: 設(shè)置觸摸事件
69. UI 消息相關(guān) -> UiMessageUtils.java -> Demo
send : 發(fā)送消息
addListener : 增加消息監(jiān)聽(tīng)器
removeListener: 移除消息監(jiān)聽(tīng)器
70.URI 相關(guān) -> UriUtils.java
res2Uri : res 轉(zhuǎn) uri
file2Uri : file 轉(zhuǎn) uri
uri2File : uri 轉(zhuǎn) file
uri2Bytes: uri 轉(zhuǎn) bytes
71.UtilsTransActivity -> UtilsTransActivity.java
start: 啟動(dòng)隨當(dāng)前線程的透明 Activity
72. UtilsTransActivity4MainProcess -> UtilsTransActivity4MainProcess.java
start: 啟動(dòng)主線程的透明 Activity
73. 震動(dòng)相關(guān) -> VibrateUtils.java -> Demo
vibrate: 震動(dòng)
cancel : 取消
74.視圖相關(guān) -> ViewUtils.java
setViewEnabled : 設(shè)置視圖是否可用
runOnUiThread : 在 UI 線程運(yùn)行
runOnUiThreadDelayed: 在 UI 線程延遲運(yùn)行
isLayoutRtl : 布局是否從右到左
fixScrollViewTopping: 修復(fù) ScrollView 置頂問(wèn)題
layoutId2View : layoutId 轉(zhuǎn)為 view
75.音量相關(guān) -> VolumeUtils.java
getVolume : 獲取音量
setVolume : 設(shè)置音量
getMaxVolume: 獲取最大音量
getMinVolume: 獲取最小音量
76. 壓縮相關(guān) -> ZipUtils.java -> Test
zipFiles : 批量壓縮文件
zipFile : 壓縮文件
unzipFile : 解壓文件
unzipFileByKeyword: 解壓帶有關(guān)鍵字的文件
getFilesPath : 獲取壓縮文件中的文件路徑鏈表
getComments : 獲取壓縮文件中的注釋鏈表
總結(jié):
原作者地址: