Android開發人員不得不收集的代碼
  • App相關→AppUtils.java

    • 安裝App installApp

    • 卸載指定包名的App uninstallApp

    • 獲取當前App信息 getAppInfo

    • 獲取所有已安裝App信息 getAllAppsInfo

    • 根據包名判斷App是否安裝 isInstallApp

    • 打開指定包名的App openAppByPackageName

    • 打開指定包名的App應用信息界面 openAppInfo

    • 可用來做App信息分享 shareAppInfo

    • 判斷當前App處于前臺還是后臺 isAppBackground

  • 常量相關→ConstUtils.java

    • 存儲相關常量

    • 時間相關常量

    • 正則相關常量

  • 轉換相關→ConvertUtils.javaTest

    • 每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.javaTest

    • URL編碼 urlEncode

    • URL解碼 urlDecode

    • Base64編碼 base64Encode base64Encode2String

    • Base64解碼 base64Decode

    • Base64URL安全編碼 base64UrlSafeEncode

    • Html編碼 htmlEncode

    • Html解碼 htmlDecode

  • 加密解密相關→EncryptUtils.javaTest

    • 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.javaTest

    • 根據文件路徑獲取文件 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

    • 避免輸入法面板遮擋

    • 動態隱藏軟鍵盤 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.javaTest

    • 驗證手機號(簡單) 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.javaTest

    • 判斷字符串是否為null或長度為0 isEmpty

    • 判斷字符串是否為null或全為空格 isSpace

    • null轉為長度為0的字符串 null2Length0

    • 返回字符串長度 length

    • 首字母大寫 upperFirstLetter

    • 首字母小寫 lowerFirstLetter

    • 轉化為半角字符 toDBC

    • 轉化為全角字符 toSBC

  • 時間相關→TimeUtils.javaTest

    • 將時間戳轉為時間字符串 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開發的小字典,當遇到一些瑣碎問題時,不用再面向百度或者谷歌查詢API的使用,費時費力,這里有的話,大家盡管擼走;同時也希望它能逐日壯大起來,期待大家的Star和完善,當然我也會一直更新發布版本和日志,為了方便大家導入,現已上傳jcenter;

來源:安卓巴士網

上一篇: Android 應用程序框架之無邊界設計意圖

下一篇: 你是碼農還是優秀程序員?

分享到: 更多
澳门二十一点要牌技巧 大乐透近5000期走势图 时时彩怎么才能稳赚不赔 彩无敌计划手机版软件 MG游戏送彩金平台 5星时时缩水 北京pk拾网址 11选5计划软件神器 亚洲兴发pt第一老虎机官网 老时时3老时时360走势图 高频彩人工计划app 歪理邪说平特一肖 二人斗地主让牌规则 pk10一天稳赚几百块 哈尔滨p62开奖结果 凤凰时时彩