Android開發一些實用的工具代碼

簡介

我在github上閒逛時,看到了一個開源的工具庫,筆者抱着好奇的心看了一下這個android開源的工具庫,發現這個工具庫將一些很多常用的工具封裝起來,之後我在自己開發中的時候也是用了這個開源工具庫,確實給我提供了一些很大程度上的便利,讓開發變得更具有效率,在此我也將這個工具庫推薦給大家。
github地址是:https://github.com/huangkunkun/AndroidUtilCode

使用

Gradle:
compile 'com.blankj:utilcode:1.1.5'

Proguard

-keep class com.blankj.utilcode.** { *; }
-keep classmembers class com.blankj.utilcode.** { *; }
-dontwarn com.blankj.utilcode.**

介紹

  • App相關→AppUtils.java
    • 安裝指定路徑下的Apk installApp
    • 安裝指定路徑下的Apk installApp
    • 卸載指定包名的App uninstallApp
    • 獲取當前App信息 getAppInfo
    • 獲取所有已安裝App信息 getAllAppsInfo
    • 打開指定包名的App openAppByPackageName
    • 打開指定包名的App應用信息界面 openAppInfo
    • 可用來做App信息分享 shareAppInfo
    • 判斷當前App處於前臺還是後臺 isApplicationBackground
  • 設備相關→DeviceUtils.java
    • 獲取設備MAC地址 getMacAddress
    • 獲取設備廠商,如Xiaomi getManufacturer
    • 獲取設備型號,如MI2SC getModel
    • 獲取設備SD卡是否可用 isSDCardEnable
    • 獲取設備SD卡路徑 getSDCardPath
  • 加解密相關→EncryptUtils.java
    • MD5加密 getMD5 encryptMD5 getMD5File
    • SHA加密 getSHA encryptSHA
  • 鍵盤相關→KeyboardUtils.java
    • 避免輸入法面板遮擋
    • 動態隱藏軟鍵盤 hideSoftInput
    • 點擊屏幕空白區域隱藏軟鍵盤(註釋萌萌噠) clickBlankArea2HideSoftInput0
    • 動態顯示軟鍵盤 showSoftInput
    • 切換鍵盤顯示與否狀態 toggleSoftInput
  • 網絡相關→NetworkUtils.java
    • 打開網絡設置界面 openWirelessSettings
    • 判斷網絡是否可用 isAvailable
    • 判斷網絡是否連接 isConnected
    • 判斷網絡是否是4G is4G
    • 判斷wifi是否連接狀態 isWifiConnected
    • 獲取移動網絡運營商名稱 getNetworkOperatorName
    • 獲取當前的網絡類型(WIFI,2G,3G,4G) getNetWorkType getNetWorkTypeName
    • 獲取移動終端類型 getPhoneType
  • 手機相關→PhoneUtils.java
    • 判斷設備是否是手機 isPhone
    • 獲取手機的IMIE getDeviceIMEI
    • 獲取手機狀態信息 getPhoneStatus
    • 跳至填充好phoneNumber的撥號界面 dial
    • 撥打phoneNumber call
    • 發送短信 sendSms
    • 獲取手機聯繫人 getAllContactInfo
    • 打開手機聯繫人界面點擊聯繫人後便獲取該號碼(註釋萌萌噠) getContantNum
    • 獲取手機短信並保存到xml中 getAllSMS
  • 正則相關→RegularUtils.java
    • 正則工具類
  • 屏幕相關→ScreenUtils.java
    • 獲取手機分辨率 getDeviceWidth、getDeviceHeight
    • 設置透明狀態欄(api >= 19方可使用) setTransparentStatusBar
    • 隱藏狀態欄(註釋萌萌噠) hideStatusBar
    • 獲取狀態欄高度 getStatusBarHeight
    • 判斷狀態欄是否存在 isStatusBarExists
    • 獲取ActionBar高度 getActionBarHeight
    • 設置屏幕爲橫屏(註釋萌萌噠) setLandscape
    • 獲取屏幕截圖 snapShotWithStatusBar、snapShotWithoutStatusBar
    • 判斷是否鎖屏 isScreenLock
  • 尺寸相關→SizeUtils.java
    • dp與px轉換 dp2px、px2dp
    • sp與px轉換 sp2px、px2sp
    • 各種單位轉換 applyDimension
    • 在onCreate()即可強行獲取View的尺寸 forceGetViewSize
    • ListView中提前測量View尺寸(註釋萌萌噠) measureView
  • 時間相關→TimeUtils.java
    • 將時間戳轉爲時間字符串 milliseconds2String
    • 將時間字符串轉爲時間戳 string2Milliseconds
    • 將時間字符串轉爲Date類型 string2Date
    • 將Date類型轉爲時間字符串 date2String
    • 將Date類型轉爲時間戳 date2Milliseconds
    • 將時間戳轉爲Date類型 milliseconds2Date
    • 毫秒時間戳單位轉換(單位:unit) milliseconds2Unit
    • 獲取兩個時間差(單位:unit) getIntervalTime
    • 獲取當前時間 getCurTimeMills getCurTimeString getCurTimeDate
    • 獲取與當前時間的差(單位:unit) getIntervalByNow
    • 判斷閏年 isLeapYear
  • 未歸類→UnclassifiedUtils.java
    • 獲取服務是否開啓 isRunningService

最後

大致就是這些了,github中也有具體的描述,感謝作者能給花時間整理,讓我們在開發中也帶來了更多的便利
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章