Android開發人員不得不收集的工具類代碼

Android開發人員不得不收集的工具類代碼Android開發人員不得不收集的工具類代碼

https://github.com/Blankj/AndroidUtilCode/blob/master/README-CN.md

API

isActivityExists   : 判斷是否存在Activity
startActivity      : 打開Activity
getLauncherActivity: 獲取入口activity
getTopActivity     : 獲取棧頂Activity
isInstallApp         : 判斷App是否安裝
installApp           : 安裝App(支持7.0)
installAppSilent     : 靜默安裝App
uninstallApp         : 卸載App
uninstallAppSilent   : 靜默卸載App
isAppRoot            : 判斷App是否有root權限
launchApp            : 打開App
getAppPackageName    : 獲取App包名
getAppDetailsSettings: 獲取App具體設置
getAppName           : 獲取App名稱
getAppIcon           : 獲取App圖標
getAppPath           : 獲取App路徑
getAppVersionName    : 獲取App版本號
getAppVersionCode    : 獲取App版本碼
isSystemApp          : 判斷App是否是系統應用
isAppDebug           : 判斷App是否是Debug版本
getAppSignature      : 獲取App簽名
getAppSignatureSHA1  : 獲取應用簽名的的SHA1值
isAppForeground      : 判斷App是否處於前臺
getForegroundApp     : 獲取前臺應用包名
getAppInfo           : 獲取App信息
getAppsInfo          : 獲取所有已安裝App信息
cleanAppData         : 清除App所有數據
setTransparentStatusBar: 設置透明狀態欄(api大於19方可使用)
hideStatusBar          : 隱藏狀態欄
getStatusBarHeight     : 獲取狀態欄高度
isStatusBarExists      : 判斷狀態欄是否存在
getActionBarHeight     : 獲取ActionBar高度
showNotificationBar    : 顯示通知欄
hideNotificationBar    : 隱藏通知欄
getInstance    : 獲取緩存實例
put            : 緩存中寫入數據
getBytes       : 緩存中讀取字節數組
getString      : 緩存中讀取String
getJSONObject  : 緩存中讀取JSONObject
getJSONArray   : 緩存中讀取JSONArray
getBitmap      : 緩存中讀取Bitmap
getDrawable    : 緩存中讀取Drawable
getParcelable  : 緩存中讀取Parcelable
getSerializable: 緩存中讀取Serializable
getCacheSize   : 獲取緩存大小
getCacheCount  : 獲取緩存個數
remove         : 根據鍵值移除緩存
clear          : 清除所有緩存
cleanInternalCache   : 清除內部緩存
cleanInternalFiles   : 清除內部文件
cleanInternalDbs     : 清除內部數據庫
cleanInternalDbByName: 根據名稱清除數據庫
cleanInternalSP      : 清除內部SP
cleanExternalCache   : 清除外部緩存
cleanCustomCache     : 清除自定義目錄下的文件
copyText  : 複製文本到剪貼板
getText   : 獲取剪貼板的文本
copyUri   : 複製uri到剪貼板
getUri    : 獲取剪貼板的uri
copyIntent: 複製意圖到剪貼板
getIntent : 獲取剪貼板的意圖
closeIO       : 關閉IO
closeIOQuietly: 安靜關閉IO
bytes2HexString, hexString2Bytes        : byteArr與hexString互轉
chars2Bytes, bytes2Chars                : charArr與byteArr互轉
memorySize2Byte, byte2MemorySize        : 以unit爲單位的內存大小與字節數互轉
byte2FitMemorySize                      : 字節數轉合適內存大小
timeSpan2Millis, millis2TimeSpan        : 以unit爲單位的時間長度與毫秒時間戳互轉
millis2FitTimeSpan                      : 毫秒時間戳轉合適時間長度
bytes2Bits, bits2Bytes                  : bytes與bits互轉
input2OutputStream, output2InputStream  : inputStream與outputStream互轉
inputStream2Bytes, bytes2InputStream    : inputStream與byteArr互轉
outputStream2Bytes, bytes2OutputStream  : outputStream與byteArr互轉
inputStream2String, string2InputStream  : inputStream與string按編碼互轉
outputStream2String, string2OutputStream: outputStream與string按編碼互轉
bitmap2Bytes, bytes2Bitmap              : bitmap與byteArr互轉
drawable2Bitmap, bitmap2Drawable        : drawable與bitmap互轉
drawable2Bytes, bytes2Drawable          : drawable與byteArr互轉
view2Bitmap                             : view轉Bitmap
dp2px, px2dp                            : dp與px互轉
sp2px, px2sp                            : sp與px互轉
init: 初始化
isDeviceRooted   : 判斷設備是否rooted
getSDKVersion    : 獲取設備系統版本號
getAndroidID     : 獲取設備AndroidID
getMacAddress    : 獲取設備MAC地址
getManufacturer  : 獲取設備廠商
getModel         : 獲取設備型號
shutdown         : 關機
reboot           : 重啓
reboot2Recovery  : 重啓到recovery
reboot2Bootloader: 重啓到bootloader
isEmpty   : 判斷對象是否爲空
isNotEmpty: 判斷對象是否非空
urlEncode          : URL編碼
urlDecode          : URL解碼
base64Encode       : Base64編碼
base64Encode2String: Base64編碼
base64Decode       : Base64解碼
base64UrlSafeEncode: Base64URL安全編碼
htmlEncode         : Html編碼
htmlDecode         : Html解碼
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解密
writeFileFromIS            : 將輸入流寫入文件
writeFileFromBytesByStream : 將字節數組寫入文件
writeFileFromBytesByChannel: 將字節數組寫入文件
writeFileFromBytesByMap    : 將字節數組寫入文件
writeFileFromString        : 將字符串寫入文件
readFile2List              : 讀取文件到字符串鏈表中
readFile2String            : 讀取文件到字符串中
readFile2BytesByStream     : 讀取文件到字節數組中
readFile2BytesByChannel    : 讀取文件到字節數組中
readFile2BytesByMap        : 讀取文件到字節數組中
getFileByPath            : 根據文件路徑獲取文件
isFileExists             : 判斷文件是否存在
rename                   : 重命名文件
isDir                    : 判斷是否是目錄
isFile                   : 判斷是否是文件
createOrExistsDir        : 判斷目錄是否存在,不存在則判斷是否創建成功
createOrExistsFile       : 判斷文件是否存在,不存在則判斷是否創建成功
createFileByDeleteOldFile: 判斷文件是否存在,存在則在創建之前刪除
copyDir                  : 複製目錄
copyFile                 : 複製文件
moveDir                  : 移動目錄
moveFile                 : 移動文件
deleteDir                : 刪除目錄
deleteFile               : 刪除文件
listFilesInDir           : 獲取目錄下所有文件
listFilesInDir           : 獲取目錄下所有文件包括子目錄
listFilesInDirWithFilter : 獲取目錄下所有後綴名爲suffix的文件
listFilesInDirWithFilter : 獲取目錄下所有後綴名爲suffix的文件包括子目錄
listFilesInDirWithFilter : 獲取目錄下所有符合filter的文件
listFilesInDirWithFilter : 獲取目錄下所有符合filter的文件包括子目錄
searchFileInDir          : 獲取目錄下指定文件名的文件包括子目錄
getFileLastModified      : 獲取文件最後修改的毫秒時間戳
getFileCharsetSimple     : 簡單獲取文件編碼格式
getFileLines             : 獲取文件行數
getDirSize               : 獲取目錄大小
getFileSize              : 獲取文件大小
getDirLength             : 獲取目錄長度
getFileLength            : 獲取文件長度
getFileMD5               : 獲取文件的MD5校驗碼
getFileMD5ToString       : 獲取文件的MD5校驗碼
getDirName               : 根據全路徑獲取最長目錄
getFileName              : 根據全路徑獲取文件名
getFileNameNoExtension   : 根據全路徑獲取文件名不帶拓展名
getFileExtension         : 根據全路徑獲取文件拓展名
addFragment              : 新增fragment
hideAddFragment          : 先隱藏後新增fragment
addFragments             : 新增多個fragment
removeFragment           : 移除fragment
removeToFragment         : 移除到指定fragment
removeFragments          : 移除同級別fragment
removeAllFragments       : 移除所有fragment
replaceFragment          : 替換fragment
popFragment              : 出棧fragment
popToFragment            : 出棧到指定fragment
popFragments             : 出棧同級別fragment
popAllFragments          : 出棧所有fragment
popAddFragment           : 先出棧後新增fragment
hideFragment             : 隱藏fragment
hideFragments            : 隱藏同級別fragment
showFragment             : 顯示fragment
hideShowFragment         : 先隱藏後顯示fragment
getLastAddFragment       : 獲取同級別最後加入的fragment
getLastAddFragmentInStack: 獲取棧中同級別最後加入的fragment
getTopShowFragment       : 獲取頂層可見fragment
getTopShowFragmentInStack: 獲取棧中頂層可見fragment
getFragments             : 獲取同級別fragment
getFragmentsInStack      : 獲取棧中同級別fragment
getAllFragments          : 獲取所有fragment
getAllFragmentsInStack   : 獲取棧中所有fragment
getPreFragment           : 獲取目標fragment的前一個fragment
findFragment             : 查找fragment
dispatchBackPress        : 處理fragment回退鍵
setBackgroundColor       : 設置背景色
setBackgroundResource    : 設置背景資源
setBackground            : 設置背景
HandlerHolder: 使用必讀
bitmap2Bytes, bytes2Bitmap      : bitmap與byteArr互轉
drawable2Bitmap, bitmap2Drawable: drawable與bitmap互轉
drawable2Bytes, bytes2Drawable  : drawable與byteArr互轉
getBitmap                       : 獲取bitmap
scale                           : 縮放圖片
clip                            : 裁剪圖片
skew                            : 傾斜圖片
rotate                          : 旋轉圖片
getRotateDegree                 : 獲取圖片旋轉角度
toRound                         : 轉爲圓形圖片
toRoundCorner                   : 轉爲圓角圖片
fastBlur                        : 快速模糊
renderScriptBlur                : renderScript模糊圖片
stackBlur                       : stack模糊圖片
addFrame                        : 添加顏色邊框
addReflection                   : 添加倒影
addTextWatermark                : 添加文字水印
addImageWatermark               : 添加圖片水印
toAlpha                         : 轉爲alpha位圖
toGray                          : 轉爲灰度圖片
save                            : 保存圖片
isImage                         : 根據文件名判斷文件是否爲圖片
getImageType                    : 獲取圖片類型
compressByScale                 : 按縮放壓縮
compressByQuality               : 按質量壓縮
compressBySampleSize            : 按採樣大小壓縮
getInstallAppIntent        : 獲取安裝App(支持6.0)的意圖
getUninstallAppIntent      : 獲取卸載App的意圖
getLaunchAppIntent         : 獲取打開App的意圖
getAppDetailsSettingsIntent: 獲取App具體設置的意圖
getShareTextIntent         : 獲取分享文本的意圖
getShareImageIntent        : 獲取分享圖片的意圖
getComponentIntent         : 獲取其他應用組件的意圖
getShutdownIntent          : 獲取關機的意圖
getCaptureIntent           : 獲取拍照的意圖
showSoftInput               : 動態顯示軟鍵盤
hideSoftInput               : 動態隱藏軟鍵盤
toggleSoftInput             : 切換鍵盤顯示與否狀態
clickBlankArea2HideSoftInput: 點擊屏幕空白區域隱藏軟鍵盤
isGpsEnabled     : 判斷Gps是否可用
isLocationEnabled: 判斷定位是否可用
openGpsSettings  : 打開Gps設置界面
register         : 註冊
unregister       : 註銷
getAddress       : 根據經緯度獲取地理位置
getCountryName   : 根據經緯度獲取所在國家
getLocality      : 根據經緯度獲取所在地
getStreet        : 根據經緯度獲取所在街道
isBetterLocation : 是否更好的位置
isSameProvider   : 是否相同的提供者
Builder.setLogSwitch     : 設置log總開關
Builder.setConsoleSwitch : 設置log控制檯開關
Builder.setGlobalTag     : 設置log全局tag
Builder.setLogHeadSwitch : 設置log頭部信息開關
Builder.setLog2FileSwitch: 設置log文件開關
Builder.setDir           : 設置log文件存儲目錄
Builder.setBorderSwitch  : 設置log邊框開關
Builder.setConsoleFilter : 設置log控制檯過濾器
Builder.setFileFilter    : 設置log文件過濾器
v                        : Verbose日誌
d                        : Debug日誌
i                        : Info日誌
w                        : Warn日誌
e                        : Error日誌
a                        : Assert日誌
file                     : log到文件
json                     : log字符串之json
xml                      : log字符串之xml
openWirelessSettings  : 打開網絡設置界面
isConnected           : 判斷網絡是否連接
isAvailableByPing     : 判斷網絡是否可用
getDataEnabled        : 判斷移動數據是否打開
setDataEnabled        : 打開或關閉移動數據
is4G                  : 判斷網絡是否是4G
getWifiEnabled        : 判斷wifi是否打開
setWifiEnabled        : 打開或關閉wifi
isWifiConnected       : 判斷wifi是否連接狀態
isWifiAvailable       : 判斷wifi數據是否可用
getNetworkOperatorName: 獲取移動網絡運營商名稱
getNetworkType        : 獲取當前網絡類型
getIPAddress          : 獲取IP地址
getDomainAddress      : 獲取域名ip地址
isPhone            : 判斷設備是否是手機
getIMEI            : 獲取IMEI碼
getIMSI            : 獲取IMSI碼
getPhoneType       : 獲取移動終端類型
isSimCardReady     : 判斷sim卡是否準備好
getSimOperatorName : 獲取Sim卡運營商名稱
getSimOperatorByMnc: 獲取Sim卡運營商名稱
getPhoneStatus     : 獲取手機狀態信息
dial               : 跳至撥號界面
call               : 撥打phoneNumber
sendSms            : 跳至發送短信界面
sendSmsSilent      : 發送短信
getAllContactInfo  : 獲取手機聯繫人
getContactNum      : 打開手機聯繫人界面點擊聯繫人後便獲取該號碼
getAllSMS          : 獲取手機短信並保存到xml中
ccs2Pinyin           : 漢字轉拼音
ccs2Pinyin           : 漢字轉拼音
getPinyinFirstLetter : 獲取第一個漢字首字母
getPinyinFirstLetters: 獲取所有漢字的首字母
getSurnamePinyin     : 根據名字獲取姓氏的拼音
getSurnameFirstLetter: 根據名字獲取姓氏的首字母
getForegroundProcessName  : 獲取前臺線程包名
killAllBackgroundProcesses: 殺死所有的後臺服務進程
killBackgroundProcesses   : 殺死後臺服務進程
isMobileSimple : 驗證手機號(簡單)
isMobileExact  : 驗證手機號(精確)
isTel          : 驗證電話號碼
isIDCard15     : 驗證身份證號碼15位
isIDCard18     : 驗證身份證號碼18位
isEmail        : 驗證郵箱
isURL          : 驗證URL
isZh           : 驗證漢字
isUsername     : 驗證用戶名
isDate         : 驗證yyyy-MM-dd格式的日期校驗,已考慮平閏年
isIP           : 驗證IP地址
isMatch        : 判斷是否匹配正則
getMatches     : 獲取正則匹配的部分
getSplits      : 獲取正則匹配分組
getReplaceFirst: 替換正則匹配的第一部分
getReplaceAll  : 替換所有正則匹配的部分
getScreenWidth         : 獲取屏幕的寬度(單位:px)
getScreenHeight        : 獲取屏幕的高度(單位:px)
setLandscape           : 設置屏幕爲橫屏
setPortrait            : 設置屏幕爲豎屏
isLandscape            : 判斷是否橫屏
isPortrait             : 判斷是否豎屏
getScreenRotation      : 獲取屏幕旋轉角度
captureWithStatusBar   : 獲取當前屏幕截圖,包含狀態欄
captureWithoutStatusBar: 獲取當前屏幕截圖,不包含狀態欄
isScreenLock           : 判斷是否鎖屏
isSDCardEnable: 判斷SD卡是否可用
getSDCardPath : 獲取SD卡路徑
getDataPath   : 獲取SD卡Data路徑
getFreeSpace  : 計算SD卡的剩餘空間
getSDCardInfo : 獲取SD卡信息
getAllRunningService: 獲取所有運行的服務
startService        : 啓動服務
stopService         : 停止服務
bindService         : 綁定服務
unbindService       : 解綁服務
isServiceRunning    : 判斷服務是否運行
execCmd: 是否是在root下執行命令
dp2px, px2dp     : dp與px轉換
sp2px, px2sp     : sp與px轉換
applyDimension   : 各種單位轉換
forceGetViewSize : 在onCreate中獲取視圖的尺寸
measureView      : 測量視圖尺寸
getMeasuredWidth : 獲取測量視圖寬度
getMeasuredHeight: 獲取測量視圖高度
showShort     : 顯示短時snackbar
showLong      : 顯示長時snackbar
showIndefinite: 顯示自定義時長snackbar
addView       : 爲SnackBar添加布局
dismiss       : 取消snackbar顯示
Builder.setFlag           : 設置標識
Builder.setForegroundColor: 設置前景色
Builder.setBackgroundColor: 設置背景色
Builder.setQuoteColor     : 設置引用線的顏色
Builder.setLeadingMargin  : 設置縮進
Builder.setMargin         : 設置間距
Builder.setBullet         : 設置列表標記
Builder.setFontSize       : 設置字體尺寸
Builder.setFontProportion : 設置字體比例
Builder.setFontXProportion: 設置字體橫向比例
Builder.setStrikethrough  : 設置刪除線
Builder.setUnderline      : 設置下劃線
Builder.setSuperscript    : 設置上標
Builder.setSubscript      : 設置下標
Builder.setBold           : 設置粗體
Builder.setItalic         : 設置斜體
Builder.setBoldItalic     : 設置粗斜體
Builder.setFontFamily     : 設置字體系列
Builder.setTypeface       : 設置字體
Builder.setAlign          : 設置對齊
Builder.setBitmap         : 設置圖片
Builder.setDrawable       : 設置圖片
Builder.setUri            : 設置圖片
Builder.setResourceId     : 設置圖片
Builder.setClickSpan      : 設置點擊事件
Builder.setUrl            : 設置超鏈接
Builder.setBlur           : 設置模糊
Builder.append            : 追加樣式字符串
Builder.create            : 創建樣式字符串
getInstance: 獲取SP實例
put        : SP中寫入數據
getString  : SP中讀取String
getInt     : SP中讀取int
getLong    : SP中讀取long
getFloat   : SP中讀取float
getBoolean : SP中讀取boolean
getAll     : SP中獲取所有鍵值對
contains   : SP中是否存在該key
remove     : SP中移除該key
clear      : SP中清除所有數據
isEmpty         : 判斷字符串是否爲null或長度爲0
isTrimEmpty     : 判斷字符串是否爲null或全爲空格
isSpace         : 判斷字符串是否爲null或全爲空白字符
equals          : 判斷兩字符串是否相等
equalsIgnoreCase: 判斷兩字符串忽略大小寫是否相等
null2Length0    : null轉爲長度爲0的字符串
length          : 返回字符串長度
upperFirstLetter: 首字母大寫
lowerFirstLetter: 首字母小寫
reverse         : 反轉字符串
toDBC           : 轉化爲半角字符
toSBC           : 轉化爲全角字符
ThreadPoolUtils       : ThreadPoolUtils構造函數
execute               : 在未來某個時間執行給定的命令
execute               : 在未來某個時間執行給定的命令鏈表
shutDown              : 待以前提交的任務執行完畢後關閉線程池
shutDownNow           : 試圖停止所有正在執行的活動任務
isShutDown            : 判斷線程池是否已關閉
isTerminated          : 關閉線程池後判斷所有任務是否都已完成
awaitTermination      : 請求關閉、發生超時或者當前線程中斷
submit                : 提交一個Callable任務用於執行
submit                : 提交一個Runnable任務用於執行
invokeAll, invokeAny  : 執行給定的任務
schedule              : 延遲執行Runnable命令
schedule              : 延遲執行Callable命令
scheduleWithFixedRate : 延遲並循環執行命令
scheduleWithFixedDelay: 延遲並以固定休息時間循環執行命令
millis2String           : 將時間戳轉爲時間字符串
string2Millis           : 將時間字符串轉爲時間戳
string2Date             : 將時間字符串轉爲Date類型
date2String             : 將Date類型轉爲時間字符串
date2Millis             : 將Date類型轉爲時間戳
millis2Date             : 將時間戳轉爲Date類型
getTimeSpan             : 獲取兩個時間差(單位:unit)
getFitTimeSpan          : 獲取合適型兩個時間差
getNowMills             : 獲取當前毫秒時間戳
getNowString            : 獲取當前時間字符串
getNowDate              : 獲取當前Date
getTimeSpanByNow        : 獲取與當前時間的差(單位:unit)
getFitTimeSpanByNow     : 獲取合適型與當前時間的差
getFriendlyTimeSpanByNow: 獲取友好型與當前時間的差
getMillis               : 獲取與給定時間等於時間差的時間戳
getString               : 獲取與給定時間等於時間差的時間字符串
getDate                 : 獲取與給定時間等於時間差的Date
getMillisByNow          : 獲取與當前時間等於時間差的時間戳
getStringByNow          : 獲取與當前時間等於時間差的時間字符串
getDateByNow            : 獲取與當前時間等於時間差的Date
isToday                 : 判斷是否今天
isLeapYear              : 判斷是否閏年
getChineseWeek          : 獲取中式星期
getUSWeek               : 獲取美式式星期
getWeekIndex            : 獲取星期索引
getWeekOfMonth          : 獲取月份中的第幾周
getWeekOfYear           : 獲取年份中的第幾周
getChineseZodiac        : 獲取生肖
getZodiac               : 獲取星座
setGravity   : 設置吐司位置
setView      : 設置吐司view
getView      : 獲取吐司view
showShortSafe: 安全地顯示短時吐司
showLongSafe : 安全地顯示長時吐司
showShort    : 顯示短時吐司
showLong     : 顯示長時吐司
cancel       : 取消吐司顯示
zipFiles          : 批量壓縮文件
zipFile           : 壓縮文件
unzipFiles        : 批量解壓文件
unzipFile         : 解壓文件
unzipFileByKeyword: 解壓帶有關鍵字的文件
getFilesPath      : 獲取壓縮文件中的文件路徑鏈表
getComments       : 獲取壓縮文件中的註釋鏈表
getEntries        : 獲取壓縮文件中的文件對象

發佈了60 篇原創文章 · 獲贊 28 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章