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

來源:互聯網
上載者:User

標籤:

  • App相關→AppUtils.java
    • 安裝App installApp
    • 卸載指定包名的App uninstallApp
    • 擷取當前App資訊 getAppInfo
    • 擷取所有已安裝App資訊 getAllAppsInfo
    • 根據包名判斷App是否安裝 isInstallApp
    • 開啟指定包名的App openAppByPackageName
    • 開啟指定包名的App應用資訊介面 openAppInfo
    • 可用來做App資訊分享 shareAppInfo
    • 判斷當前App處於前台還是後台 isAppBackground
  • 常量相關→ConstUtils.java
    • 儲存相關常量
    • 時間相關常量
    • 正則相關常量
  • 轉換相關→ConvertUtils.java→Test
    • 每1個byte轉為2個hex字元 bytes2HexString
    • 每2個hex字元轉為1個byte hexString2Bytes
    • charArr轉byteArr chars2Bytes
    • byteArr轉charArr bytes2Chars
  • 裝置相關→DeviceUtils.java
    • 擷取裝置MAC地址 getMacAddress
    • 擷取裝置廠商,如Xiaomi getManufacturer
    • 擷取裝置型號,如MI2SC getModel
  • 編碼解碼相關→EncodeUtils.java→Test
    • URL編碼 urlEncode
    • URL解碼 urlDecode
    • Base64編碼 base64Encode base64Encode2String
    • Base64解碼 base64Decode
    • Base64URL安全編碼 base64UrlSafeEncode
    • Html編碼 htmlEncode
    • Html解碼 htmlDecode
  • 加密解密相關→EncryptUtils.java→Test
    • MD2加密 encryptMD2ToString encryptMD2
    • MD5加密 encryptMD5ToString encryptMD5
    • SHA1加密 encryptSHA1ToString encryptSHA1
    • SHA224加密 encryptSHA224ToString encryptSHA224
    • SHA256加密 encryptSHA256ToString encryptSHA256
    • SHA384加密 encryptSHA384ToString encryptSHA384
    • SHA512加密 encryptSHA512ToString encryptSHA512
    • 擷取檔案的MD5校正碼 encryptMD5File2String encryptMD5File
    • DES加密後轉為Base64編碼 encryptDES2Base64
    • DES加密後轉為16進位 encryptDES2HexString
    • DES加密 encryptDES
    • DES解密Base64編碼密文 decryptBase64DES
    • DES解密16進位密文 decryptHexStringDES
    • DES解密 decryptDES
    • 3DES加密後轉為Base64編碼 encrypt3DES2Base64
    • 3DES加密後轉為16進位 encrypt3DES2HexString
    • 3DES加密 encrypt3DES
    • 3DES解密Base64編碼密文 decryptBase64_3DES
    • 3DES解密16進位密文 decryptHexString3DES
    • 3DES解密 decrypt3DES
    • AES加密後轉為Base64編碼 encryptAES2Base64
    • AES加密後轉為16進位 encryptAES2HexString
    • AES加密 encryptAES
    • AES解密Base64編碼密文 decryptBase64AES
    • AES解密16進位密文 decryptHexStringAES
    • AES解密 decryptAES
  • 檔案相關→FileUtils.java→Test
    • 根據檔案路徑擷取檔案 getFileByPath
    • 判斷檔案是否存在 isFileExists
    • 判斷是否是目錄 isDir
    • 判斷是否是檔案 isFile
    • 判斷目錄是否存在,不存在則判斷是否建立成功 createOrExistsDir
    • 判斷檔案是否存在,不存在則判斷是否建立成功 createOrExistsFile
    • 判斷檔案是否存在,存在則在建立之前刪除 createFileByDeleteOldFile
    • 複製目錄 copyDir
    • 複製檔案 copyFile
    • 移動目錄 moveDir
    • 移動檔案 moveFile
    • 刪除目錄 deleteDir
    • 刪除檔案 deleteFile
    • 將輸入資料流寫入檔案 writeFileFromIS
    • 將字串寫入檔案 writeFileFromString
    • 簡單擷取檔案編碼格式 getFileCharsetSimple
    • 擷取檔案行數 getFileLines
    • 指定編碼按行讀取檔案到List readFile2List
    • 指定編碼按行讀取檔案到StringBuilder中 readFile2SB
    • byte單位轉換(單位:unit) byte2Unit
    • 擷取檔案大小 getFileSize
    • 根據全路徑擷取最長目錄 getDirName
    • 根據全路徑擷取檔案名稱 getFileName
    • 根據全路徑擷取檔案名稱不帶拓展名 getFileNameNoExtension
    • 根據全路徑擷取檔案拓展名 getFileExtension
  • 圖片相關→ImageUtils.java
    • 完善ing
  • 鍵盤相關→KeyboardUtils.java
    • 避免IME面板遮擋
    • 動態隱藏軟鍵盤 hideSoftInput
    • 點擊螢幕空白地區隱藏軟鍵盤(注釋萌萌噠) clickBlankArea2HideSoftInput0
    • 動態顯示軟鍵盤 showSoftInput
    • 切換鍵盤顯示與否狀態 toggleSoftInput
  • 網路相關→NetworkUtils.java
    • 開啟網路設定介面 openWirelessSettings
    • 判斷網路是否可用 isAvailable
    • 判斷網路是否串連 isConnected
    • 判斷網路是否是4G is4G
    • 判斷wifi是否串連狀態 isWifiConnected
    • 擷取移動網路電訊廠商名稱 getNetworkOperatorName
    • 擷取移動終端類型 getPhoneType
    • 擷取當前的網路類型(WIFI,2G,3G,4G) getNetWorkType getNetWorkTypeName
  • 手機相關→PhoneUtils.java
    • 判斷裝置是否是手機 isPhone
    • 擷取手機的IMIE getPhoneIMEI
    • 擷取手機狀態資訊 getPhoneStatus
    • 跳至填充好phoneNumber的撥號介面 dial
    • 撥打phoneNumber call
    • 傳送簡訊 sendSms
    • 擷取手機連絡人 getAllContactInfo
    • 開啟手機連絡人介面點擊連絡人後便擷取該號碼(注釋萌萌噠) getContantNum
    • 擷取手機簡訊並儲存到xml中 getAllSMS
  • 正則相關→RegularUtils.java→Test
    • 驗證手機號(簡單) isMobileSimple
    • 驗證手機號(精確) isMobileExact
    • 驗證電話號碼 isTel
    • 驗證社會安全號碼碼15位 isIDCard15
    • 驗證社會安全號碼碼18位 isIDCard18
    • 驗證郵箱 isEmail
    • 驗證URL isURL
    • 驗證漢字 isChz
    • 驗證使用者名稱 isUsername
    • 驗證yyyy-MM-dd格式的日期校正,已考慮平閏年 isDate
    • 驗證IP地址 isIP
    • string是否匹配regex isMatch
  • 螢幕相關→ScreenUtils.java
    • 擷取手機解析度 getDeviceWidth、getDeviceHeight
    • 設定透明狀態列(api大於19方可使用) setTransparentStatusBar
    • 隱藏狀態列(注釋萌萌噠) hideStatusBar
    • 擷取狀態列高度 getStatusBarHeight
    • 判斷狀態列是否存在 isStatusBarExists
    • 擷取ActionBar高度 getActionBarHeight
    • 顯示通知欄 showNotificationBar
    • 隱藏通知欄 hideNotificationBar
    • 設定螢幕為橫屏(注釋萌萌噠) setLandscape
    • 擷取螢幕 snapShotWithStatusBar、snapShotWithoutStatusBar
    • 判斷是否鎖屏 isScreenLock
  • SD卡相關→SDCardUtils.java
    • 擷取裝置SD卡是否可用 isSDCardEnable
    • 擷取裝置SD卡路徑 getSDCardPath
    • 完善ing
  • Shell相關→ShellUtils.java
    • 判斷裝置是否root isRoot
    • 是否是在root下執行命令 execCmd
  • 尺寸相關→SizeUtils.java
    • dp與px轉換 dp2px、px2dp
    • sp與px轉換 sp2px、px2sp
    • 各種單位轉換 applyDimension
    • 在onCreate()即可強行擷取View的尺寸 forceGetViewSize
    • ListView中提前測量View尺寸(注釋萌萌噠) measureView
  • SP相關→SPUtils.java
    • SP中寫入String類型value putString
    • SP中讀取String getString
    • SP中寫入int類型value putInt
    • SP中讀取int getInt
    • SP中寫入long類型value putLong
    • SP中讀取long getLong
    • SP中寫入float類型value putFloat
    • SP中讀取float getFloat
    • SP中寫入boolean類型value putBoolean
    • SP中讀取boolean getBoolean
  • 字串相關→StringUtils.java→Test
    • 判斷字串是否為null或長度為0 isEmpty
    • 判斷字串是否為null或全為空白格 isSpace
    • null轉為長度為0的字串 null2Length0
    • 返回字串長度 length
    • 首字母大寫 upperFirstLetter
    • 首字母小寫 lowerFirstLetter
    • 轉化為半形字元 toDBC
    • 轉化為全形字元 toSBC
  • 時間相關→TimeUtils.java→Test
    • 將時間戳記轉為時間字串 milliseconds2String
    • 將時間字串轉為時間戳記 string2Milliseconds
    • 將時間字串轉為Date類型 string2Date
    • 將Date類型轉為時間字串 date2String
    • 將Date類型轉為時間戳記 date2Milliseconds
    • 將時間戳記轉為Date類型 milliseconds2Date
    • 毫秒時間戳記單位轉換(單位:unit) milliseconds2Unit
    • 擷取兩個時間差(單位:unit) getIntervalTime
    • 擷取目前時間 getCurTimeMills getCurTimeString getCurTimeDate
    • 擷取與目前時間的差(單位:unit) getIntervalByNow
    • 判斷閏年 isLeapYear
  • 未歸類→UnclassifiedUtils.java
    • 擷取服務是否開啟 isRunningService
  • 更新Log→update_log.md

做這份整理是想把它作為Android開發的小字典,當遇到一些瑣碎問題時,不用再面向百度或者Google查詢API的使用,費時費力,這裡有的話,大家儘管擼走;同時也希望它能逐日壯大起來,期待大家的Star和完善,當然我也會一直更新發布版本和日誌,為了方便大家匯入,現已上傳jcenter;其中很多代碼也是匯四方之精華,謝謝前輩們的提供,當然最終還是要通過單元測試的,

Download

Gradle:

[代碼]xml代碼:
compile ‘com.blankj:utilcode:1.1.1‘

 

Proguard[代碼]xml代碼:
-keep class com.blankj.utilcode.** { *; }-keepclassmembers class com.blankj.utilcode.** { *; }-dontwarn com.blankj.utilcode.**

 

Android開發人員不得不收集的代碼(轉)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.