Android常用開發工具類

Android常用開發工具類

Android開發中常用的的工具類集合,體積小60多KB,可以moudle依賴也可以手動打包arr導入,適合快速開發!具體內容可查看詳情,和代碼鏈接查看!

應用工具類

AbAppUtil代碼鏈接

  • 讀取application 節點 meta-data 信息readMetaDataFromApplication
  • 打開並安裝文件 installApk
  • 卸載程序 uninstallApk
  • 用來判斷服務是否運行 isServiceRunning
  • 停止服務 stopRunningService
  • 判斷網絡是否有效 isNetworkAvailable
  • Gps是否打開 isGpsEnabled
  • 判斷當前網絡是否是移動數據網絡 isMobile
  • 導入數據庫 importDatabase
  • 獲取屏幕尺寸與密度 getDisplayMetrics
  • 打開鍵盤 showSoftInput
  • 關閉鍵盤事件 closeSoftInput
  • 獲取包信息 getPackageInfo
  • 獲取當前版本號 getVersionName
  • 獲取開發版本號 getVersionCode
  • 是否存在該包名的應用 exitAppBy

日期處理類

AbDateUtil代碼鏈接
* String類型的日期時間轉化爲Date類型 getDateByFormat
* 獲取偏移之後的Date getDateByOffset
* 獲取指定日期時間的字符串(可偏移) getStringByOffset
* Date類型轉化爲String類型(可偏移) getStringByOffset
* Date類型轉化爲String類型 getStringByFormat
* 獲取指定日期時間的字符串,用於導出想要的格式 getStringByFormat
* 獲取milliseconds表示的日期時間的字符串 getStringByFormat
* 獲取表示當前日期時間的字符串 getCurrentDate
* 獲取表示當前日期時間的字符串(可偏移) getCurrentDateByOffset
* 計算兩個日期所差的天數 getOffectDay
* 計算兩個日期所差的小時數 getOffectHour
* 計算兩個日期所差的分鐘數 getOffectMinutes
* 獲取本週一 getFirstDayOfWeek
* 獲取本週日 getLastDayOfWeek
* 獲取本週的某一天 getDayOfWeek
* 獲取本月第一天 getFirstDayOfMonth
* 獲取本月最後一天 getLastDayOfMonth
* 獲取表示當前日期的0點時間毫秒數 getFirstTimeOfDay
* 獲取表示當前日期24點時間毫秒數 getLastTimeOfDay
* 判斷是否是閏年 isLeapYear
* 根據時間返回格式化後的時間的描述. 小於1小時顯示多少分鐘前 大於1小時顯示今天+實際日期,大於今天全部顯示實際時間formatDateStr2Desc
* 取指定日期爲星期幾 getWeekNumber
* 根據給定的日期判斷是否爲上下午 getTimeQuantum
* 根據給定的毫秒數算得時間的描述 getTimeDescription
* 解析時間按照小時:分:秒格式輸出 getTime

文件操作類

AbFileUtil代碼鏈接
* 通過文件的網絡地址從SD卡中讀取圖片,如果SD中沒有則自動下載並保存 getBitmapFromSD
* 通過文件的本地地址從SD卡讀取圖片 getBitmapFromSD
* 通過文件的本地地址從SD卡讀取圖片 getBitmapFromSD
* 將圖片的byte[]寫入本地文件 getBitmapFromByte
* 根據URL從互連網獲取圖片 getBitmapFromURL
* 獲取src中的圖片資源 getBitmapFromSrc
* 獲取Asset中的圖片資源 getBitmapFromAsset getDrawableFromAsset
* 下載網絡文件到SD卡中.如果SD中存在同名文件將不再下載 downloadFile
* 獲取網絡文件的大小 getContentLengthFromUrl
* 獲取文件名,通過網絡獲取 getRealFileNameFromUrl
* 獲取真實文件名(xx.後綴),通過網絡獲取 getRealFileName
* 獲取文件名(不含後綴) getCacheFileNameFromUrl
* 獲取文件名(.後綴),外鏈模式和通過網絡獲取 getCacheFileNameFromUrl
* 獲取文件後綴,本地 getMIMEFromUrl
* 從sd卡中的文件讀取到byte getByteArrayFromSD
* 將byte數組寫入文件 writeByteArrayToSD
* SD卡是否能用 isCanUseSD
* 計算sdcard上的剩餘空間 freeSpaceOnSD
* 根據文件的最後修改時間進行排序 FileLastModifSort
* 刪除所有緩存文件 clearDownloadFile
* 讀取Assets目錄的文件內容 readAssetsByName
* 讀取Raw目錄的文件內容 readRawByName
* 解壓縮功能. 將zipFile文件解壓到folderPath目錄下 upZipFile
* 給定根目錄,返回一個相對路徑所對應的實際文件名.(壓縮文件) getRealFileName
* 打開pdf文件 openPdfFile
* 刪除文件,可以是單個文件或文件夾 delete
* 刪除單個文件 deleteFile
* 刪除目錄(文件夾)以及目錄下的文件 deleteDirectory
* 獲取下載根目錄 getDownloadRootDir
* 獲取圖片下載根目錄 getImageDownloadDir
* 獲取文件下載根目錄getFileDownloadDir
* 本地緩存的目錄 getCacheDownloadDir
* 本地數據庫目錄 getDbDownloadDir
* 緩存中可用的大小 getFreeSdSpaceNeededToCache

圖形處理類

AbGraphicUtil代碼鏈接
* 獲取字符的所在位置(按像素獲取最大能容納的)subStringLength
* 獲取文字的像素寬 getStringWidth
* 獲得文字的寬度 getDesiredWidth
* 獲取文字的高度 getDesiredHeight
* 字符解析成行 getDrawRowStr
* 獲取這段文本多少行 getDrawRowCount
* 繪製文本,支持換行 drawText

圖片處理類

AbImageUtil代碼鏈接
* 解析bitmap getBitmapByte
* 直接獲取互聯網上的圖片 getBitmap
* 獲取原圖 getBitmap
* 縮放圖片.壓縮 scaleImg
* 縮放圖片,不壓縮的縮放
* 裁剪圖片 cutImg
* Drawable轉Bitmap drawableToBitmap
* Bitmap對象轉換Drawable對象. bitmapToDrawable
* Bitmap對象轉換TransitionDrawable對象 bitmapToTransitionDrawable
* Drawable對象轉換TransitionDrawable對象 drawableToTransitionDrawable
* 將Bitmap轉換爲byte[] bitmap2Bytes
* 獲取Bitmap大小 getByteCount
* 將byte[]轉換爲Bitmap bytes2Bimap
* 將View轉換爲Drawable.需要最上層佈局爲Linearlayout view2Drawable
* 將View轉換爲Bitmap.需要最上層佈局爲Linearlayout view2Bitmap
* 將View轉換爲byte[] view2Bytes
* 旋轉Bitmap爲一定的角度 rotateBitmap
* 旋轉Bitmap爲一定的角度並四周暗化處理 rotateBitmapTranslate
* 轉換圖片轉換成圓形 toRoundBitmap
* 轉換圖片轉換成圓形通過指定的弧度 toRoundBitmap
* 轉換圖片轉換成鏡面效果的圖片 toReflectionBitmap
* 釋放Bitmap對象 releaseBitmap
* 釋放Bitmap數組 releaseBitmapArray
* 簡單的圖像的特徵值,用於縮略圖找原圖比較好 getHashCode
* 圖像的特徵值顏色分佈 將顏色分4個區,0,1,2,3 區組合共64組,計算每個像素點屬於哪個區 getColorHistogram
* 計算”漢明距離”(Hamming distance)hammingDistance
* 灰度值計算 rgbToGray
* 壓縮圖片 compressBitmap
* 根據URI獲取圖片物理路徑 getAbsoluteImagePath

日誌工具類

AbLogUtil代碼鏈接

數學處理類

AbMathUtil代碼鏈接
* 四捨五入 round
* 字節數組轉換成16進制串 byte2HexStr
* 二進制轉爲十六進制 binaryToHex
* 一維數組轉爲二維數組 arrayToMatrix
* 二維數組轉爲一維數組 matrixToArray
* int數組轉換爲double數組 intToDoubleArray
* int二維數組轉換爲double二維數組. intToDoubleMatrix
* 計算數組的平均值 average
* 點在直線上 pointAtSLine
* 點在線段上 pointAtELine
* 兩條直線相交 LineAtLine
* 線段與線段相交 eLineAtELine
* 點在矩形內 pointAtRect
* 矩形在矩形內 rectAtRect
* 圓心在矩形內 circleAtRect
* 獲取兩點間的距離 getDistance
* 矩形碰撞檢測 參數爲x,y,width,height isRectCollision

MD5加密

AbMd5代碼鏈接
* MD5加密 MD5

保存到 SharedPreferences 的數據

AbSharedUtil代碼鏈接

字符串處理類

AbStrUtil代碼鏈接
* 給填寫搜索單詞的關鍵詞顯示 特殊顏色 changeTextColor
* 將null轉化爲“” parseEmpty
* 判斷一個字符串是否爲null或空值 isEmpty
* 集合是否爲空 isEmpty
* 獲取字符串中文字符的長度(每個中文算2個字符) chineseLength
* 獲取字符串的長度 strLength
* 獲取指定長度的字符所在位置 subStringLength
* 手機號格式驗證 isMobileNo
* 是否只是字母和數字 isNumberLetter
* 是否只是數字 isNumber
* 是否是郵箱 isEmail
* 是否是中文 isChinese
* 是否包含中文 isContainChinese
* 是否包含中文數字字母的用戶名 isConintChinseUser
* 從輸入流中獲得String convertStreamToString
* 標準化日期時間類型的數據,不足兩位的補0 dateTimeFormat
* 不足2個字符的在前面補“0” strFormat2
* 截取字符串到指定字節長度 cutString
* 截取字符串從第一個指定字符 cutStringFromChar
* 獲取字節長度 strlen
* 獲取大小的描述 getSizeDesc
* ip地址轉換爲10進制數 ip2int

View工具類

AbViewUtil代碼鏈接
* 測量這個view measureView
* 獲得這個View的寬度 getViewWidth
* 獲得這個View的高度 getViewHeight
* 從父親佈局中移除自己 removeSelfFromParent
* dip轉換爲px dip2px
* px轉換爲dip px2dip
* sp轉換爲px sp2px
* px轉換爲sp px2sp
* 根據屏幕大小縮放 scale
* 根據屏幕大小縮放 scale
* TypedValue官方源碼中的算法,任意單位轉換爲PX單位 applyDimension
* View樹遞歸調用做適配 scaleContentView
* 按比例縮放View,以佈局中的尺寸爲基準 scaleView
* 縮放文字大小 setSPTextSize
* 縮放文字大小,這樣設置的好處是文字的大小不和密度有關 setTextSize
* 縮放文字大小 setTextSize
* 設置View的PX尺寸 setViewSize
* 設置PX padding. setPadding
* 設置 PX margin setMargin

戳我下載源碼!!!!!!!!!!!!!!!!!!!

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