API
銀行卡管理 → BankCheck
checkBankCard : 校驗銀行卡卡號是否合法
getBankCardCheckCode: 從不含校驗位的銀行卡卡號采用 Luhm 校驗算法獲得校驗位
getNameOfBank : 通過銀行卡的前六位確定判斷銀行開戶行及卡種
SharePreference緩存數據 →AppSharePreferenceMgr
put : 保存數據的方法
get : 獲取數據的方法
putImage: 保存圖片到SharedPreferences
getImage: 從SharedPreferences讀取圖片
remove : 移除某個key值已經對應的值
clear : 清除所有數據
contains: 查詢某個key是否已經存在
getAll : 返回所有的鍵值對
提供App數據清理工作的類 → AppCleanMgr
cleanInternalCache : 清除本應用內部緩存數據
cleanExternalCache : 清除本應用外部緩存數據
cleanDatabases : 清除本應用所有數據庫
cleanSharedPreference: 清除本應用SharedPreference
cleanDatabaseByName : 根據名字清除本應用數據庫
cleanFiles : 清除本應用files文件
cleanApplicationData : 清除本應用所有的數據
getAppClearSize : 獲取App應用緩存的大小
緩存工具類 → AppACache
put : 保存String數據到緩存中
getAsString : 讀取String數據
getAsJSONObject : 讀取JSONObject數據
getAsJSONArray : 讀取JSONArray數據
getAsBinary : 獲取byte數據
getAsObject : 讀取Serializable數據
getAsBitmap : 讀取bitmap數據
getAsDrawable : 讀取Drawable數據
file : 獲取緩存文件
remove : 除某個key
clear : 清除所有數據
App應用退出 → AppExit2Back
exitApp: 退出App程序應用
管理和回收Activity → AppDavikActivityMgr
getScreenManager : 單例堆棧集合對象
removeActivity : 堆棧中銷毀並移除
removeAllActivity : 棧中銷毀並移除所有Act對象
currentActivity : 取當前Act對象
getCurrentActivityName: 獲得當前Act的類名
addActivity : 將Act納入推棧集合中
exitApp : 退出棧中所有Activity
獲取App應用版本信息 → AppApplicationMgr
getAppName : 獲取本地apk的名稱
getVersionName : 獲取本地Apk版本名稱
getVersionCode : 獲取本地Apk版本號
getMetaData : 根據key獲取xml中Meta的值
getAppIcon : 獲取應用圖標
getAppFirstInstallTime : 獲取應用第一次安裝日期
getAppLastUpdateTime : 獲取應用更新日期
getAppSize : 獲取應用大小
getAppApk : 獲取應用apk文件
getAppInstaller : 獲取應用的安裝市場
getAppSign : 獲取應用簽名
getAppTargetSdkVersion : 獲取應用兼容sdk
getAppUid : 獲取應用uid
getNumCores : 獲取Cpu內核數
getRootPermission : 獲得root權限
getAppPermissions : 獲取應用的所有權限
hasPermission : 是否有權限
isInstalled : 應用是否安裝
installApk : 安裝應用
uninstallApk : 卸載應用
isSystemApp : 是否是系統應用
isServiceRunning : 服務是否在運行
stopRunningService : 停止服務
killProcesses : 結束進程
runScript : 運行腳本
runApp : 啟動應用
軟鍵盤管理 → AppKeyBoardMgr
openKeybord : 打卡軟鍵盤
closeKeybord : 關閉軟鍵盤
TimerHideKeyboard: 通過定時器強制隱藏虛擬鍵盤
isKeybord : 輸入法是否顯示
系統日志輸出工具類 → AppLogMessageMgr
isEnableDebug: 設置log總開關,debug模式(true:打印日志 false:不打印)
i : Info日志
d : Debug日志
w : Warn日志
v : Verbose日志
e : Error日志
這里推薦使用凱子哥的日志管理工具,灰常好用,我也集成到了我的項目里面,KLog對超長字符串進行處理,保證全部的字符串都可以打印出來,再也沒有了只能打印一部分的問題了,部分使用方法如下
系統日志輸出工具類 → KLog
init: 設置log總開關,debug模式(true:打印日志 false:不打印)
a : assert日志或者打印是否執行到這里等
i : Info日志或者打印是否執行到這里等
d : Debug日志或者打印是否執行到這里等
w : Warn日志或者打印是否執行到這里等
v : Verbose日志或者打印是否執行到這里等
e : Error日志或者打印是否執行到這里等
json: 輸出Json的格式字符串
xml : 輸出xml的格式字符串
file: 保存到文件
更多使用方法信息點擊這里查看:KLog
App網絡管理 → AppNetworkMgr
getNetworkState : 獲取當前手機連接的網絡類型
isNetworkConnected : 判斷網絡是否連接
openNetSetting : 打開網絡設置界面
is3gConnected : 檢測3G是否連接
getNetworkTypeName : 獲取網絡類型名稱
getCurrentNetworkState : 獲取當前網絡的狀態
getCurrentNetworkSubtype : 獲取當前網絡的具體類型
isConnectedByState : 判斷當前網絡是否已經連接
isConnectingByState : 判斷當前網絡是否正在連接
isDisconnectedByState : 判斷當前網絡是否已經斷開
isDisconnectingByState : 判斷當前網絡是否正在斷開
isSuspendedByState : 判斷當前網絡是否已經暫停
isUnknownByState : 判斷當前網絡是否處於未知狀態中
isBluetoothByType : 判斷當前網絡的類型是否是藍牙
isDummyByType : 判斷當前網絡的類型是否是虛擬網絡
isEthernetByType : 判斷當前網絡的類型是否是ETHERNET
isMobileByType : 判斷當前網絡的類型是否是移動網絡
isMobileDunByType : 判斷當前網絡的類型是否是MobileDun
isMobileHipriByType : 判斷當前網絡的類型是否是MobileHipri
isMobileMmsByType : 判斷當前網絡的類型是否是MobileMms
isMobileSuplByType : 判斷當前網絡的類型是否是MobileSupl
isWifiByType : 判斷當前網絡的類型是否是Wifi
isWimaxByType : 判斷當前網絡的類型是否是Wimax
is1XRTTBySubtype : 判斷當前網絡的具體類型是否是1XRTT
isCDMABySubtype : 判斷當前網絡的具體類型是否是CDMA(Either IS95A or IS95B)
isEDGEBySubtype : 判斷當前網絡的具體類型是否是EDGE
isEHRPDBySubtype : 判斷當前網絡的具體類型是否是EHRPD
isEVDO_0BySubtype : 判斷當前網絡的具體類型是否是EVDO_0
isEVDO_ABySubtype : 判斷當前網絡的具體類型是否是EVDO_A
isEVDO_BBySubtype : 判斷當前網絡的具體類型是否是EDGE
isGPRSBySubtype : 判斷當前網絡的具體類型是否是GPRS
isHSDPABySubtype : 判斷當前網絡的具體類型是否是HSDPA
isHSPABySubtype : 判斷當前網絡的具體類型是否是HSPA
isHSPAPBySubtype : 判斷當前網絡的具體類型是否是HSPAP
isHSUPABySubtype : 判斷當前網絡的具體類型是否是HSUPA
isIDENBySubtype : 判斷當前網絡的具體類型是否是IDEN
isLTEBySubtype : 判斷當前網絡的具體類型是否是LTE
isUMTSBySubtype : 判斷當前網絡的具體類型是否是UMTS
isUNKNOWNBySubtype : 判斷當前網絡的具體類型是否是UNKNOWN
isChinaMobile2G : 判斷當前網絡是否是中國移動2G網絡
isChinaUnicom2G : 判斷當前網絡是否是中國聯通2G網絡
isChinaUnicom3G : 判斷當前網絡是否是中國聯通3G網絡
isChinaTelecom2G : 判斷當前網絡是否是中國電信2G網絡
isChinaTelecom3G : 判斷當前網絡是否是中國電信3G網絡
getWifiState : 獲取Wifi的狀態,需要ACCESS_WIFI_STATE權限
isWifiOpen : 判斷Wifi是否打開,需要ACCESS_WIFI_STATE權限
setWifi : 設置Wifi,需要CHANGE_WIFI_STATE權限
isMobileNetworkOpen : 判斷移動網絡是否打開,需要ACCESS_NETWORK_STATE權限
getIpAddress : 獲取本機IP地址
setDataEnabled : 設置數據流量狀態
getWifiScanResults : 獲取wifi列表
getScanResultsByBSSID : 過濾掃描結果
getWifiConnectionInfo : 獲取wifi連接信息
手機管理工具類 → AppPhoneMgr
getInstance : 單例對象
getSDKVersionNumber : 獲取手機系統版本號
getPhoneModel : 獲取手機型號
getPhoneWidth : 獲取手機寬度
getPhoneHeight : 獲取手機高度
getPhoneImei : 獲取手機imei串號 ,GSM手機的 IMEI 和 CDMA手機的 MEID
getPhoneSim : 獲取手機sim卡號
getPhoneNum : 獲取手機號
isSDCardMount : 判斷sd卡是否掛載
getSDFreeSize : 獲取sd卡剩余空間的大小
getSDAllSize : 獲取sd卡空間的總大小
isTablet : 判斷是否是平板
isApkInstalled : 判斷一個apk是否安裝
getAppPermissions : 獲取應用權限 名稱列表
getInstalledApp : 獲取手機內安裝的應用
getUserInstalledApp : 獲取手機安裝非系統應用
getInstalledAppInfo : 獲取安裝應用的信息
startAppPkg : 打開指定包名的應用
unInstallApk : 卸載指定包名的應用
callPhone : 直接呼叫指定的號碼
toCallPhoneActivity : 跳轉至撥號界面
sendMessage : 直接調用短信API發送信息(設置監聽發送和接收狀態)
toSendMessageActivity: 跳轉至發送短信界面(自動設置接收方的號碼)
toChooseContactsList : 跳轉至聯系人選擇界面
getChoosedPhoneNumber: 獲取選擇的聯系人的手機號碼
toCameraActivity : 跳轉至拍照程序界面
toImagePickerActivity: 跳轉至相冊選擇界面
getChoosedImage : 獲得選中相冊的圖片
openWebSite : 調用本地瀏覽器打開一個網頁
toSettingActivity : 跳轉至系統設置界面
toWIFISettingActivity: 跳轉至WIFI設置界面
openPDFFile : 啟動本地應用打開PDF
openWordFile : 啟動本地應用打開PDF
openOfficeByWPS : 調用WPS打開office文檔
isInstalledApp : 判斷是否安裝指定包名的APP
isExistActivity : 判斷是否存在指定的Activity
getPhoneType : 獲取移動終端類型
isSimCardReady : 判斷sim卡是否准備好
getPhoneStatus : 獲取手機狀態信息
getAllSMS : 獲取手機短信並保存到xml中
反射工具類 → AppReflectionMgr
getProperty : 得到某個對象的公共屬性
getStaticProperty : 得到某類的靜態公共屬性
invokeMethod : 執行某對象方法
invokeStaticMethod : 執行某類的靜態方法
newInstance : 新建實例
isInstance : 是不是某個類的實例
getByArray : 得到數組中的某個元素
GetClassListByPackage: 得到類的集合
獲取本地指定資源信息 → AppResourceMgr
getStringByAssets: 根據本地Assets目錄下資源名稱,獲取String數據信息
getListByAssets : 根據本地Assets目錄下資源名稱,獲取List集合信息
getStringByRaw : 根據本地Raw目錄下資源標識,獲取String數據信息
getListByRaw : 根據本地Raw目錄下資源標識,獲取List集合信息
有關Android屏幕的工具類 → AppScreenMgr
getScreenWidth : 獲得屏幕寬度
getScreenHeight : 獲得屏幕高度
getStatusHeight : 獲得狀態欄的高度
getRealScreenHeight : 獲取整塊屏幕的高度
getNavigationAreaHeight : 獲取虛擬按鍵區域的高度
getNavigationBarrH : 獲取導航欄高度
snapShotWithStatusBar : 獲取當前屏幕截圖,包含狀態欄
snapShotWithoutStatusBar: 獲取當前屏幕截圖,不包含狀態欄
獲取App應用系統基本信息 → AppSysMgr
getSysClientOs : 獲得客戶端操作系統名稱
getSysSdk : 獲取當前操作系統的sdk版本
getSysLanguage : 獲取當前操作系統的語言
getSysModel : 獲取手機型號
getSysRelease : 獲取操作系統的版本號
getSysSIMSerialNum : 讀取SIM卡序列號
getSysCPUSerialNum : 獲取手機CPU序列號
getSysTelephonyManager : 獲得電話管理實例對象
getSysTelephoneSerialNum : 讀唯一的設備ID(唯一的設備ID【GSM手機的IMEI】和【CDMA手機的 MEID】,如果獲取不到返回一個默認字符串)
getSysCarrier : 獲取運營商信息(三大運營商)
getSysPhoneState : 獲取手機狀態(0:無活動 1:響鈴 2:待機)
getSysPhoneLoaction : 獲得手機方位
getSysDeviceSoftVersion : 獲得設備的軟件版本號(注:the IMEI/SV(software version) for GSM phones 不支持返回“not available”)
getSysPhoneNumber : 獲得手機號
getSysSimCode : 獲得SIM卡提供的移動國家碼和移動網絡碼.5或6位的十進制數字。(注:SIM卡的狀態必須是 SIM_STATE_READY(使用getSimState()判斷))
getSysSimPrivatorName : 服務商名稱(注:例如:中國移動、聯通SIM卡的狀態必須是 SIM_STATE_READY(使用getSimState()判斷))
getSysUserPhoneId : 唯一的用戶ID (注:例如:IMSI(國際移動用戶識別碼) for a GSM phone. 需要權限:READ_PHONE_STATE)
getWindowManager : 獲取WindowManager對象
getSysDefaultThreadPoolSize: 獲得系統配置相符的線程池大小
getSysSampleSize : 獲取當前APP應用的SampleSize大小
getVibrator : 獲取震動器對象
getSysLocalIpAddress : 獲取手機IP地址
getAndroidID : 獲取AndroidID
getIMSI : 獲取設備IMSI碼
getIP : 獲取網絡IP地址(優先獲取wifi地址)
getWifiIP : 獲取WIFI連接下的ip地址
getGPRSIP : 獲取GPRS連接下的ip地址
getSerial : 獲取設備序列號
getSIMSerial : 獲取SIM序列號
getMNC : 獲取網絡運營商 46000,46002,46007 中國移動,46001 中國聯通,46003 中國電信
getCarrier : 獲取網絡運營商:中國電信,中國移動,中國聯通
getModel : 獲取硬件型號
getBuildBrand : 獲取編譯廠商
getBuildHost : 獲取編譯服務器主機
getBuildTags : 獲取描述Build的標簽
getBuildTime : 獲取系統編譯時間
getBuildUser : 獲取系統編譯作者
getBuildVersionRelease : 獲取編譯系統版本(5.1)
getBuildVersionCodename : 獲取開發代號
getBuildVersionIncremental : 獲取源碼控制版本號
getBuildVersionSDK : 獲取編譯的SDK
getBuildID : 獲取修訂版本列表(LMY47D)
getSupportedABIS : CPU指令集
getManufacturer : 獲取硬件制造廠商
getBootloader : 獲取系統啟動程序版本號
getDisplayVersion : 獲取系統版本號
getLanguage : 獲取語言
getCountry : 獲取國家
getOSVersion : 獲取系統版本:5.1.1
getGSFID : 獲取GSF序列號
getBluetoothMAC : 獲取藍牙地址
getPsuedoUniqueID : Android設備物理唯一標識符
getFingerprint : 構建標識,包括brand,name,device,version.release,id,version.incremental,type,tags這些信息
getHardware :獲取硬件信息
getProduct :獲取產品信息
getDevice :獲取設備信息
getBoard :獲取主板信息
getRadioVersion :獲取基帶版本(無線電固件版本 Api14以上)
getUA : 獲取的瀏覽器指紋(User-Agent)
getDensity : 獲取得屏幕密度
getGoogleAccounts : 獲取google賬號
自定義Toast提示框 → AppToastMgr
shortToast : 自定義Toast調用
longToast : 自定義Toast調用
cancelToast : 取消顯示Toast
Toast : 默認Toast調用
show : 屏幕中心位置短時間顯示Toast。
ToastShortBottomCenter: 屏幕底部中間位置顯示短時間Toast
ToastShortBottomLeft : 屏幕底部左邊位置短時間顯示Toast
ToastShortBottomRight : 屏幕底部右邊位置短時間顯示Toast
ToastShortCenter : 屏幕中心位置短時間顯示Toast
ToastShortCenterLeft : 屏幕中心左邊位置短時間顯示Toast
ToastShortCenterRight : 屏幕中心右邊位置短時間顯示Toast
ToastShortTopCenter : 屏幕頂部中心位置短時間顯示Toast
ToastShortTopLeft : 屏幕頂部左邊位置短時間顯示Toast
ToastShortTopRight : 屏幕頂部右邊位置短時間顯示Toast
ToastLongBottomCenter : 屏幕底部中間位置顯示長時間Toast
ToastLongBottomLeft : 屏幕底部左邊位置長時間顯示Toast
ToastLongBottomRight : 屏幕底部右邊位置長時間顯示Toast
ToastLongCenter : 屏幕中心位置長時間顯示Toast
ToastLongCenterLeft : 屏幕中心左邊位置長時間顯示Toast
ToastLongCenterRight : 屏幕中心右邊位置短時間顯示Toast
ToastLongTopCenter : 屏幕頂部中心位置長時間顯示Toast
ToastLongTopLeft : 屏幕頂部左邊位置長時間顯示Toast
ToastLongTopRight : 屏幕頂部右邊位置長時間顯示Toast
正則表達式 → AppValidationMgr
isEmpty : 驗證是否為空串 (包括空格、制表符、回車符、換行符組成的字符串 若輸入字符串為null或空字符串,返回true)
isNotEmpty : 是否不為空
isNotZero : 驗證非零正整數
isNumber : 驗證是數字
isUpChar : 驗證是大寫字母
isLowChar : 驗證是小寫字母
isLetter : 驗證是英文字母
isChinese : 驗證輸入漢字
isRealName : 驗證真實姓名
isOneCode : 驗證是否是條形碼
isEmail : 驗證郵箱是否正確
isPhone : 驗證手機號是否正確
isPlane : 驗證座機號碼是否正確
isPostalCode : 驗證郵政編碼是否正確
isIpAddress : 驗證IP地址是否正確
isURL : 驗證URL地址是否正確
isInteger : 驗證是否是正整數
isPoint : 驗證是否是小數
isBankNo : 驗證是否銀行卡號
isIDCard : 驗證身份證號碼是否正確
isPeculiarStr : 判斷是否有特殊字符
isUserName : 判斷是否為用戶名賬號(規則如下:用戶名由下划線或字母開頭,由數字、字母、下划線、點、減號組成的4-32位字符)
chineseLength : 獲取字符串中文字符的長度(每個中文算2個字符)
strLength : 獲取字符串的長度
subStringLength : 獲取指定長度的字符所在位置
isNumberLetter : 是否只是字母和數字
isContainChinese : 是否包含中文
convertStreamToString: 從輸入流中獲得String
cutString : 截取字符串到指定字節長度
cutStringFromChar : 截取字符串從第一個指定字符
strlen : 獲取字節長度
getSizeDesc : 獲取大小的描述
ip2int : ip地址轉換為10進制數
gainUUID : 獲取UUID
phoneNoHide : 手機號碼,中間4位星號替換
cardIdHide : 銀行卡號,保留最后4位,其他星號替換
idHide : 身份證號,中間10位星號替換
checkVehicleNo : 是否為車牌號(滬A88888)
Wifi管理工具類 → AppWifiHelperMgr
isWifiEnabled : Wifi狀態
openWifi : 打開wifi
closeWifi : 關閉Wifi
lockWifi : 鎖定WiFI就是判斷wifi是否建立成功,在這里使用的是held(握手) acquire
unLockWifi : 解鎖
wificreateWifiLock: 創建一個Wifi鎖,需要時調用
startScan : 掃描網絡
getWifiList : 獲取wifi列表
getWifiConfigList : 獲取wifi配置列表
lookupScanInfo : 獲取掃描WIFI列表的信息
getSSID : 獲取指定Wifi的ssid名稱
getBSSID : 獲取指定Wifi的物理地址
getFrequency : 獲取指定Wifi的頻率
getCapabilities : 獲取指定Wifi的功能
getLevel : 獲取指定Wifi的信號強度
getBSSID : 獲取SSID
getCurrentNetId : 返回當前連接的網絡的ID
getWifiInfo : 返回所有信息
getIP : 獲取IP地址
addNetWordLink : 添加一個連接
disableNetWordLink: 禁用一個鏈接
removeNetworkLink : 移除一個鏈接
hiddenSSID : 不顯示SSID
displaySSID : 顯示SSID
類型轉換類 → ConvertUtils
hexStringToBytes: 十六進制字符串轉換為byte數組
bytesToHexString: byte數組轉換為十六進制字符串
charToByte : char轉換為byte數組
intToByte : int轉換為byte數組
byteToInt : byte數組轉換為int
saveDecimals : 保留幾位小數
nullOfString : null轉String
stringToByte : String轉Byte
stringToBoolean : String轉Boolean
stringToInt : String轉Int
stringToShort : String轉Short
stringToDouble : String轉Double
intToString : Int轉String
doubleToLong : Double轉Long
doubleToInt : Double轉Int
longToDouble : Long轉Double
longToInt : Long轉Int
stringToLong : String轉Long
longToString : Long轉String
日期管理類 → AppDateMgr
todayYyyyMmDd : 當天的年月日
todayHhMmSs : 當天的時分秒
todayYyyyMmDdHhMmSs : 當天的年月日時分秒
parseYyyy : 獲取年
parseMm : 獲取月
parseDd : 獲取日
parseYyyyMmDd : 獲取年月日
parseHhMmSs : 時分秒
getWeekNumber : 獲取星期幾
getWeekOfMonth : 日期中某個月份的第幾周
getWeekOfYear : 日期中某個年份的第幾周
dateTimeToTimeStamp : 將年月日時分秒轉成Long類型
timeStampToDateTime : 將Long類型轉成年月日時分秒
string2Date : 將年月日時分秒轉成Date類型
date2String : 將Date類型轉成年月日時分秒
dateIsBefore : 比較日期
minutesBetweenTwoDate : 相差多少分鍾
getChineseZodiac : 獲取日期中的生肖
getZodiac : 獲取日期中的星座
getNowDayOffset : 獲取日期
getTime : 獲取日期
forward : 使日期倒一天
isLeapYear : 判斷平年閏年
getDaysOfMonth : 計算某月的天數
secondsMorning : 獲取當天凌晨的秒數
secondsNight : 獲取第二天凌晨的秒數
isSameDay : 判斷某兩天是不是同一天
formatFriendly : 將日期格式化成友好的字符串:幾分鍾前、幾小時前、幾天前、幾月前、幾年前、剛剛
formatDateTime : 將日期以yyyy-MM-dd HH:mm:ss格式化
formatDateTime : 將日期以yyyy-MM-dd HH:mm:ss格式化
formatDateTime : 將日期以yyyy-MM-dd HH:mm:ss格式化
parseDate : 將日期字符串轉成日期
gainCurrentDate : 獲取系統當前日期
compareDate : 驗證日期是否比當前日期早
addDateTime : 對日期進行增加操作
subDateTime : 對日期進行相減操作
formatDateForExcelDate: 格式化excel中的時間
formatDateForFileName : 將日期格式化作為文件名
formatDateSecond : 格式化日期(精確到秒)
tempDateSecond : 格式化日期(精確到秒)
tempDateSecond : 格式化日期(精確到秒)
formatDateDay : 格式化日期(精確到天)
formatDateDetailDay : 式化日期(精確到天)
formatNumber : double類型的數字保留兩位小數(四舍五入)
formateDate : 將字符串轉換成日期
parseStringToDate : 將字符日期轉換成Date
formatDoubleNumber : 將double日期轉換成String
手機常用單位轉換的輔助類 → DensityUtils
dip2px: 據手機的分辨率從 dip 的單位 轉成為 px(像素)
px2dip: 根據手機的分辨率從 px(像素) 的單位 轉成為 dp
dp2px : dp轉px
sp2px : sp轉px
px2dp : px轉dp
px2sp : px轉sp
文件管理類 → FileUtils
createFileDir : 創建目錄
delFile : 刪除文件(若為目錄,則遞歸刪除子目錄和文件)
getFileSize : 取文件大小,單位為byte(若為目錄,則包括所有子目錄和文件)
saveBitmap : 保存Bitmap到指定目錄
isFileExists : 判斷某目錄下文件是否存在
isMountedSDCard : 檢查是否已掛載SD卡鏡像(是否存在SD卡)
gainSDFreeSize : 獲取SD卡剩余容量(單位Byte)
gainSDAllSize : 獲取SD卡總容量(單位Byte)
gainSDCardPath : 獲取可用的SD卡路徑(若SD卡不沒有掛載則返回"")
readFileByLines : 以行為單位讀取文件內容,一次讀一整行,常用於讀面向行的格式化文件
saveToFile : 保存內容
saveToFile : 指定編碼保存內容
appendToFile : 追加文本
isExsit : 判斷文件是否存在
read : 快速讀取程序應用包下的文件內容
read : 讀取指定目錄文件的文件內容
read : 以行為單位讀取文件內容,一次讀一整行,常用於讀面向行的格式化文件
readRawValue : 讀取raw目錄的文件內容
readAssetsValue : 讀取assets目錄的文件內容
readAssetsListValue: 讀取assets目錄的文件內容
readShrePerface : 獲取SharedPreferences文件內容
writeShrePerface : 寫入SharedPreferences文件內容
write : 寫入應用程序包files目錄下文件
write : 指定編碼將內容寫入目標文件
write : 指定目錄寫入文件內容
write : 寫入文件
saveAsJPEG : 指定目錄寫入文件內容
saveAsPNG : 指定目錄寫入文件內容
getStringFromFile : 將文件轉成字符串
copyFile : 復制文件
copyFileFast : 快速復制
shareFile : 分享文件
zip : 壓縮
unzip : 解壓
formatFileSize : 格式化文件大小
Stream2File : 將輸入流寫入到文件
createFolder : 創建文件夾(支持覆蓋已存在的同名文件夾)
getFileName : 獲取文件名
rename : 重命名文件\文件夾
getFolderName : 獲取文件夾名稱
getFilesArray : 獲取文件夾下所有文件
openImage : 打開圖片
openVideo : 打開視頻
openURL : 打開URL
downloadFile : 下載文件
upgradeApp : 通過APKURL升級應用
控件點擊效果動畫工具類 → ToolAnimation
addTouchDrak : 給視圖添加點擊效果,讓背景變深
addTouchLight: 給視圖添加點擊效果,讓背景變暗
view管理類 → ViewUtils
removeSelfFromParent : 把自身從父View中移除
isTouchInView : 判斷觸點是否落在該View上
setTVUnderLine : 給TextView設置下划線
showPopupWindow : 顯示PopupWindow
dismissPopup : 關閉PopupWindow
captureView : 截圖
createViewBitmap : 截圖
convertViewToBitmap : 截圖
getActivityBitmap : 獲取Activity的截圖
getStatusBarHeight : 獲取狀態欄高度
getToolbarHeight : 獲取工具欄高度
getNavigationBarHeight : 獲取導航欄高度
measureView : 測量view
getViewWidth : 獲取view的寬度
getViewHeight : 獲取view的高度
getActivity : 獲取view的上下文
提供APP應用計算,算法等 -> AppCalculateMgr
distance : 兩點間的距離
pointTotoDegrees: 計算點a(x,y)的角度
checkInRound : 點在圓內
SpannableString工具類 →SpannableStringUtils
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 : 創建樣式字符串
Snackbar工具類 → SnackbarUtils
ShortSnackbar : 短顯示Snackbar,自定義顏色
LongSnackbar : 長顯示Snackbar,自定義顏色
IndefiniteSnackbar: 自定義時常顯示Snackbar,自定義顏色
ShortSnackbar : 短顯示Snackbar,可選預設類型
LongSnackbar : 顯示Snackbar,可選預設類型
IndefiniteSnackbar: 自定義時常顯示Snackbar,可選預設類型
setSnackbarColor : 設置Snackbar背景顏色
setSnackbarColor : 設置Snackbar文字和背景顏色
SnackbarAddView : 向Snackbar中添加view
Picasso圖片加載工具類 → PicassoUtils
getinstance : 單例對象
LoadImage : 加載圖片
LoadImageWithWidtAndHeight: 加載圖片,設置寬高,圖片默認居中(centerCrop())
Glide圖片加載工具類 → GlideUtils
instance : 單例對象
LoadContextBitmap : Glide請求圖片,會受到Context生命周期控制
LoadFragmentBitmap : Glide請求圖片,會受到Fragment生命周期控制
LoadSupportv4FragmentBitmap : Glide請求圖片,會受到support.v4.app.Fragment生命周期控制
LoadContextCircleBitmap : 加載設置圓形圖片
LoadfragmentCircleBitmap : Glide請求圖片設置圓形,會受到android.app.Fragment生命周期控制
LoadSupportv4FragmentCircleBitmap: Glide請求圖片設置圓形,會受到android.support.v4.app.Fragment生命周期控制
LoadContextRoundBitmap : 加載設置圓角圖片
LoadfragmentRoundBitmap : Glide請求圖片設置圓角,會受到android.app.Fragment生命周期控制
LoadSupportv4FragmentRoundBitmap : Glide請求圖片設置圓角,會受到android.support.v4.app.Fragment生命周期控制
LoadContextBlurBitmap : Glide加載模糊圖片
LoadFragmentBlurBitmap : Glide加載模糊圖片會受到Fragment生命周期控制
LoadSupportv4FragmentBlurBitmap : Glide加載模糊圖片會受到support.v4.app.Fragment生命周期控制
LoadContextRotateBitmap : 旋轉圖片
LoadFragmentRotateBitmap : Glide加載旋轉圖片會受到Fragment生命周期控制
LoadSupportv4FragmentRotateBitmap: Glide加載旋轉圖片會受到support.v4.app.Fragment生命周期控制
Fresco圖片加載工具類 → FrescoUtils
initConfig : 初始化配置
initImagePipelineConfig: 單例
init : 默認加載圖片和失敗圖片
configureCaches : 初始化配置
setImageURI : 開始加載圖片
changeImgSize : 自定義圖片尺寸
loadGif : 加載gif圖
moreImgRequst : 多圖請求需自定義ImageRequest(圖片預覽)
localImg : 縮略圖預覽(僅支持本地圖片,並且是JPEG圖片格式)
loadImage : 請求圖片
getImageDecodeOptions : 圖片解碼
圖片管理工具類 → AppImageMgr
getBitmap : 根據drawable id獲取Bitmap
getDrawable : 根據drawable id獲取Drawable
bitmapToDrawble : bitmap轉drawable
readDrawableBitmap : 以最省內存的方式讀取本地資源的圖片
readDrawableBigBitmap : 讀取本地drawable中較大的資源圖片
getBitmapFromFile : 從文件得到BitMap
getBitmapByteArray : 從數組得到Bitmap
getBitmapFromStream : 從流中得到Bitmap
setAlpha : 圖片透明度處理
getImgCacheFromLocal2Bitmap: 獲取源圖片的BITMAP,壓縮,本地圖片
getBitmap2Byte : bitmap轉byte[]
decodeBitmapToThumbnail : 獲取縮略圖
saveImage : 保存圖片
grayMasking : 光暈效果
getBitmapSize : 獲取bitmap的字節大小
convertToBlackWhite : 將彩色圖轉換為黑白圖
convertToRoundedCorner : 轉換成圓角
BoxBlurFilter : 高斯模糊
getCircleBitmap : 圓形圖片
getRoundedCornerBitmap : 獲取圓角
lessenBitmap : 按比例縮小圖片(單位像素) lessen the bitmap
readPictureDegree : 判斷圖片旋轉情況
rotaingImageView : 旋轉圖片
rotateBitmap : 圖片旋轉
getBitmapFromUri : 根據uri獲取圖片
getPicPathFromUri : 圖片uri轉path
getSmallBitmap : 根據路徑獲得圖片並壓縮返回bitmap用於顯示
decodeBitmap : 從文件中獲取圖片
computeSampleSize : 使用該算法,就可動態計算出圖片的inSampleSize
applyDimension : 長度單位轉換
資金運算工具類 → AppBigDecimal
add : 提供精確的加法運算
substract : 提供精確的減法運算
multiply : 提供精確的乘法運算
divide : 提供(相對)精確的除法運算.當發生除不盡的情況時,由scale參數指 定精度,以后的數字四舍五入.
round : 提供精確的小數位四舍五入處理
remainder : 取余數
formatMoney : 金額分割,四舍五人金額
compareBigDecimal: 比較大小
adjustDouble : 獲取自己想要的數據格式
WebService網絡工具類 → WebServiceUtils
callWebService: 請求網絡數據
HttpURLConnection網絡工具類 →HttpURLConnectionUtils
doGetAsyn : 異步的Get請求
doPostAsyn: 異步的Post請求
doGet : Get請求,獲得返回數據
doPost : 向指定 URL 發送POST方法的請求
字符串判斷工具類 → AppStringUtils
isEmpty : 判斷字符串是否為空
isNotEmpty : 判斷str null,"","null" 均視為空
checkNameChese : 檢測String是否全是中文
isChinese : 判定輸入漢字
toLowerCaseFirstOne : 將字符串的第一位轉為小寫
toUpperCaseFirstOne : 將字符串的第一位轉為大寫
underScoreCase2CamelCase : 下划線命名轉為駝峰命名
camelCase2UnderScoreCase : 駝峰命名法轉為下划線命名
throwable2String : 將異常棧信息轉為字符串
concat : 字符串連接,將參數列表拼接為一個字符串
concatSpiltWith : 字符串連接,將參數列表拼接為一個字符串
toASCII : 將字符串轉移為ASCII碼
toUnicode : 將字符串轉移為Unicode碼
toUnicodeString : 將字符串轉移為Unicode碼
containsChineseChar : 是否包含中文字符
isNumber : 參數是否是有效數字 (整數或者小數)
matcherFirst : 匹配到第一個字符串
isInt : 參數是否是有效整數
isDouble : 字符串參數是否是double
isBoolean : 判斷一個對象是否為boolean類型,包括字符串中的true和false
isTrue : 對象是否為true
contains : 判斷一個數組里是否包含指定對象
toInt : 將對象轉為int值,如果對象無法進行轉換,則使用默認值
toLong : 將對象轉為long類型,如果對象無法轉換,將返回默認值
toDouble : 將對象轉為Double,如果對象無法轉換,將使用默認值
splitFirst : 分隔字符串,根據正則表達式分隔字符串,只分隔首個,剩下的的不進行分隔,如: 1,2,3,4 將分隔為 ['1','2,3,4']
toString : 將對象轉為字符串,如果對象為null,則返回null,而不是"null"
toStringAndSplit : 將對象轉為String后進行分割,如果為對象為空或者空字符,則返回null
Json工具類 → JsonUtils
toJson : 對象轉json
fromJson : json轉對象
map2Json : Map轉為JSONObject
collection2Json : 集合轉換為JSONArray
object2Json : Object對象轉換為JSONArray
string2JSONObject : json字符串生成JSONObject對象
object2json : 對象轉換為Json
list2json : List集合轉換為Json
array2json : 對象數組轉換為Json
set2json : Set集合轉為Json
string2json : 字符串轉換為Json
系統媒體管理工具類 → MediaUtil
startActivityForCamera : 進入系統拍照
startActivityForGallery : 進入系統圖庫
startActivityForImageCut : 進入系統裁剪
GPS坐標轉換工具 → CoordinateTransformUtil
bd09towgs84 : 百度坐標系(BD-09)轉WGS坐標(百度坐標緯度,百度坐標經度),WGS84坐標數組
wgs84tobd09 : WGS坐標轉百度坐標系(BD-09)(WGS84坐標系的經度,WGS84坐標系的緯度),百度坐標數組
gcj02tobd09 : 火星坐標系(GCJ-02)轉百度坐標系(BD-09)(火星坐標經度,火星坐標緯度),百度坐標數組
bd09togcj02 : 百度坐標系(BD-09)轉火星坐標系(GCJ-02)(百度坐標緯度,百度坐標經度),火星坐標數組
wgs84togcj02 : WGS84轉GCJ02(火星坐標系)(WGS84坐標系的經度,WGS84坐標系的緯度),火星坐標數組
gcj02towgs84 : GCJ02(火星坐標系)轉GPS84(火星坐標系的經度,火星坐標系緯度),WGS84坐標數組
transformlat : 緯度轉換
transformlng : 經度轉換
out_of_china : 判斷是否在國內,不在國內不做偏移
程序崩潰處理類 → CrashHandlerUtil
getInstance : 獲取CrashHandler實例 ,單例模式
init : 初始化
setCrashTip : 設置程序退出時的提示信息
html標簽管理類 → HtmlUtils
addHtmlRedFlag : 為給定的字符串添加HTML紅色標記,當使用Html.fromHtml()方式顯示到TextView 的時候其將是紅色的
keywordMadeRed : 將給定的字符串中所有給定的關鍵字標紅
root權限工具類 → RootPermissionUtils
isRoot : 根據/system/bin/或/system/xbin目錄下是否存在su文件判斷是否已ROOT
快捷圖標管理類 → ShortCutUtils
hasShortcut : 檢測是否存在快捷鍵
addShortcut : 為程序創建桌面快捷方式
delShortcut : 刪除程序的快捷方式
單例工具類 → SingletonUtils
getInstance : 獲取單例
WebView管理類 → WebViewManager
enableAdaptive : 開啟自適應功能
disableAdaptive : 禁用自適應功能
enableZoom : 開啟縮放功能
disableZoom : 禁用縮放功能
enableJavaScript : 開啟JavaScript
disableJavaScript : 禁用JavaScript
enableJavaScriptOpenWindowsAutomatically : 開啟JavaScript自動彈窗
disableJavaScriptOpenWindowsAutomatically : 禁用JavaScript自動彈窗
goBack : 返回
窗口管理類 → WindowUtils
getDisplayRotation : 獲取當前窗口的旋轉角度
isLandscape : 當前是否是橫屏
isPortrait : 當前是否是豎屏
dimBackground : 調整窗口的透明度 1.0f,0.5f 變暗
setLandscape : 設置Activity為橫屏
setPortrait : 設置Activity為豎屏
setActivityFullScreen : 設置全屏,要在setContentView之前調用
pull解析xml管理類 → XmlParseUtiles
getXmlList : 解析XML
getXmlObject : 解析XML
setXmlValue : 把xml標簽的值,轉換成對象里屬性的值
壓縮工具類 → ZipUtil
zipFiles : 批量壓縮文件(夾)
upZipFile : 解壓縮一個文件
upZipSelectedFile : 解壓文件名包含傳入文字的文件
getEntriesNames : 獲得壓縮文件內文件列表
getEntriesEnumeration : 獲得壓縮文件內壓縮文件對象以取得其屬性
getEntryComment : 取得壓縮文件對象的注釋
getEntryName : 取得壓縮文件對象的名稱
zipFile : 壓縮文件
Fragment管理類 → FragmentUtils
addFragment : 新增fragment
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 : 設置背景
AES對稱加密 → AESUtils
initKey : 生成密鑰
encrypt : 加密
decrypt : 解密
DES對稱加密 → DESUtils
initKey : 生成密鑰
encrypt : DES 加密
decrypt : DES 解密
MD5加密 → MD5Utils
encryptMD5 : MD5加密
SHA-1加密不可逆 → SHAUtils
encryptSHA : SHA-512 加密
3DES對稱加密 → TripleDESUtils
initKey : 生成密鑰
encrypt : 3DES 加密
decrypt : 3DES 解密
加密工具類 → [CipherUtils]
md5 : 輸入流轉md5
XorEncode : 異或加密
XorDecode : 異或解密
sha1 : 字符串sha1值
About
這里把開發中常用的一些工具類做一個整理,主要用到的時候不用再費力的百度或者Google了,大家有需要的可以隨時借鑒走,同時也希望這個越來越強大,有什么錯誤的地方還希望各位不吝指出,讓我得以完善,當然,在此聲明,這些並不是我一個人,也用了許多前輩們的東西,這里一並感謝,目前還在測試,還沒有上傳到Jcenter,需要的自己拷貝,測試完成后會給大家貼出引用地址的,持續更新中。對你有用就給一個Start吧!
Download
Gradle:
compile 'com.abrahamcaijin.commonutil:CommonUtil:1.0.0'
- 1
- 1
Maven:
<dependency> <groupId>com.abrahamcaijin.commonutil</groupId> <artifactId>CommonUtil</artifactId> <version>1.0.0</version> <type>pom</type> </dependency>
Ivy:
<dependency org='com.abrahamcaijin.commonutil' name='CommonUtil' rev='1.0.0'> <artifact name='CommonUtil' ext='pom' ></artifact> </dependency>
How to use
// init it in the function of onCreate in ur Application AppUtils.init(context);
Proguard
-keep class com.jingewenku.abrahamcaijin.commonutil.** { *; } -keepclassmembers class com.jingewenku.abrahamcaijin.commonutil.** { *; } -dontwarn com.jingewenku.abrahamcaijin.commonutil.**