欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Android有哪些常用工具類

這篇文章將為大家詳細(xì)講解有關(guān)Android有哪些常用工具類,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)專注于新都網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供新都營(yíng)銷型網(wǎng)站建設(shè),新都網(wǎng)站制作、新都網(wǎng)頁(yè)設(shè)計(jì)、新都網(wǎng)站官網(wǎng)定制、小程序設(shè)計(jì)服務(wù),打造新都網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供新都網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

主要介紹總結(jié)的Android開發(fā)中常用的工具類,大部分同樣適用于Java。  目前包括HttpUtils、DownloadManagerPro、ShellUtils、PackageUtils、 PreferencesUtils、JSONUtils、FileUtils、ResourceUtils、StringUtils、 ParcelUtils、RandomUtils、ArrayUtils、ImageUtils、ListUtils、MapUtils、 ObjectUtils、SerializeUtils、SystemUtils、TimeUtils。 The English version of  this article see:Android Common Utils  所有代碼都在TrineaAndroidCommon@Github中,歡迎Star或Fork^_*,除這些工具類外此項(xiàng)目還包括緩存、下拉 ListView等。詳細(xì)接口介紹可見TrineaAndroidCommon API Guide。  具體使用:可直接引入TrineaAndroidCommon作為你項(xiàng)目的library(如何拉取代碼及添加公共庫(kù)),或是自己抽取其中的部分使用。

1、HttpUtils

Http網(wǎng)絡(luò)工具類,主要包括httpGet、httpPost以及http參數(shù)相關(guān)方法,以httpGet為例:

static HttpResponse httpGet(HttpRequest request)

static HttpResponse httpGet(java.lang.String httpUrl)

static String httpGetString(String httpUrl)

包含以上三個(gè)方法,默認(rèn)使用gzip壓縮,使用bufferedReader提高讀取速度。

HttpRequest中可以設(shè)置url、timeout、userAgent等其他http參數(shù)

HttpResponse中可以獲取返回內(nèi)容、http響應(yīng)碼、http過(guò)期時(shí)間(Cache-Control的max-age和expires)等

前兩個(gè)方法可以進(jìn)行高級(jí)參數(shù)設(shè)置及豐富內(nèi)容返回,第三個(gè)方法可以簡(jiǎn)單的傳入url獲取返回內(nèi)容,httpPost類似。更詳細(xì)的設(shè)置可以直接使用HttpURLConnection或apache的HttpClient。

源碼可見HttpUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見HttpUtils Api Guide。

2、DownloadManagerPro

Android系統(tǒng)下載管理DownloadManager增強(qiáng)方法,可用于包括獲取下載相關(guān)信息,如:

getStatusById(long) 得到下載狀態(tài)

getDownloadBytes(long) 得到下載進(jìn)度信息

getBytesAndStatus(long) 得到下載進(jìn)度信息和狀態(tài)

getFileName(long) 得到下載文件路徑

getUri(long) 得到下載uri

getReason(long) 得到下載失敗或暫停原因

getPausedReason(long) 得到下載暫停原因

getErrorCode(long) 得到下載錯(cuò)誤碼

源碼可見DownloadManagerPro.java,更多方法及更詳細(xì)參數(shù)介紹可見DownloadManagerPro Api Guide。關(guān)于Android DownManager使用可見DownManager Demo。

3、ShellUtils

Android Shell工具類,可用于檢查系統(tǒng)root權(quán)限,并在shell或root用戶下執(zhí)行shell命令。如:

checkRootPermission() 檢查root權(quán)限

execCommand(String[] commands, boolean isRoot, boolean isNeedResultMsg) shell環(huán)境執(zhí)行命令,第二個(gè)參數(shù)表示是否root權(quán)限執(zhí)行

execCommand(String command, boolean isRoot) shell環(huán)境執(zhí)行命令

源碼可見ShellUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ShellUtils Api Guide。關(guān)于靜默安裝可見apk-root權(quán)限靜默安裝。

4、PackageUtils

Android包相關(guān)工具類,可用于(root)安裝應(yīng)用、(root)卸載應(yīng)用、判斷是否系統(tǒng)應(yīng)用等,如:

install(Context, String) 安裝應(yīng)用,如果是系統(tǒng)應(yīng)用或已經(jīng)root,則靜默安裝,否則一般安裝

uninstall(Context, String) 卸載應(yīng)用,如果是系統(tǒng)應(yīng)用或已經(jīng)root,則靜默卸載,否則一般卸載

isSystemApplication(Context, String) 判斷應(yīng)用是否為系統(tǒng)應(yīng)用

源碼可見PackageUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ShellUtils Api Guide。關(guān)于靜默安裝可見apk-root權(quán)限靜默安裝。

5、PreferencesUtils

Android SharedPreferences相關(guān)工具類,可用于方便的向SharedPreferences中讀取和寫入相關(guān)類型數(shù)據(jù),如:

putString(Context, String, String) 保存string類型數(shù)據(jù)

putInt(Context, String, int) 保存int類型數(shù)據(jù)

getString(Context, String) 獲取string類型數(shù)據(jù)

getInt(Context, String) 獲取int類型數(shù)據(jù)

可通過(guò)修改PREFERENCE_NAME變量修改preference name

源碼可見PreferencesUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見PreferencesUtils Api Guide。

6、JSONUtils

JSONUtils工具類,可用于方便的向Json中讀取和寫入相關(guān)類型數(shù)據(jù),如:

String getString(JSONObject jsonObject, String key, String defaultValue) 得到string類型value

String getString(String jsonData, String key, String defaultValue) 得到string類型value

表示從json中讀取某個(gè)String類型key的值

getMap(JSONObject jsonObject, String key) 得到map

getMap(String jsonData, String key) 得到map

表示從json中讀取某個(gè)Map類型key的值

源碼可見JSONUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見JSONUtils Api Guide。

7、FileUtils

文件工具類,可用于讀寫文件及對(duì)文件進(jìn)行操作。如:

readFile(String filePath) 讀文件

writeFile(String filePath, String content, boolean append) 寫文件

getFileSize(String path) 得到文件大小

deleteFile(String path) 刪除文件

源碼可見FileUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見FileUtils Api Guide。

8、ResourceUtils

Android Resource工具類,可用于從android資源目錄的raw和assets目錄讀取內(nèi)容,如:

geFileFromAssets(Context context, String fileName) 得到assets目錄下某個(gè)文件內(nèi)容

geFileFromRaw(Context context, int resId) 得到raw目錄下某個(gè)文件內(nèi)容

源碼可見ResourceUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ResourceUtils Api Guide。

9、StringUtils

String工具類,可用于常見字符串操作,如:

isEmpty(String str) 判斷字符串是否為空或長(zhǎng)度為0

isBlank(String str) 判斷字符串是否為空或長(zhǎng)度為0 或由空格組成

utf8Encode(String str) 以u(píng)tf-8格式編碼

capitalizeFirstLetter(String str) 首字母大寫

源碼可見StringUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見StringUtils Api Guide。

10、ParcelUtils

Android Parcel工具類,可用于從parcel讀取或?qū)懭胩厥忸愋蛿?shù)據(jù),如:

readBoolean(Parcel in) 從pacel中讀取boolean類型數(shù)據(jù)

readHashMap(Parcel in, ClassLoader loader) 從pacel中讀取map類型數(shù)據(jù)

writeBoolean(boolean b, Parcel out) 向parcel中寫入boolean類型數(shù)據(jù)

writeHashMap(Map<K, V> map, Parcel out, int flags) 向parcel中寫入map類型數(shù)據(jù)

源碼可見ParcelUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ParcelUtils Api Guide。

11、RandomUtils

隨機(jī)數(shù)工具類,可用于獲取固定大小固定字符內(nèi)的隨機(jī)數(shù),如:

getRandom(char[] sourceChar, int length) 生成隨機(jī)字符串,所有字符均在某個(gè)字符串內(nèi)

getRandomNumbers(int length) 生成隨機(jī)數(shù)字

源碼可見RandomUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見RandomUtils Api Guide。

12、ArrayUtils

數(shù)組工具類,可用于數(shù)組常用操作,如:

isEmpty(V[] sourceArray) 判斷數(shù)組是否為空或長(zhǎng)度為0

getLast(V[] sourceArray, V value, V defaultValue, boolean isCircle) 得到數(shù)組中某個(gè)元素前一個(gè)元素,isCircle表示是否循環(huán)

getNext(V[] sourceArray, V value, V defaultValue, boolean isCircle) 得到數(shù)組中某個(gè)元素下一個(gè)元素,isCircle表示是否循環(huán)

源碼可見ArrayUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ArrayUtils Api Guide。

13、ImageUtils

圖片工具類,可用于Bitmap, byte array, Drawable之間進(jìn)行轉(zhuǎn)換以及圖片縮放,目前功能薄弱,后面會(huì)進(jìn)行增強(qiáng)。如:

bitmapToDrawable(Bitmap b) bimap轉(zhuǎn)換為drawable

drawableToBitmap(Drawable d) drawable轉(zhuǎn)換為bitmap

drawableToByte(Drawable d) drawable轉(zhuǎn)換為byte

scaleImage(Bitmap org, float scaleWidth, float scaleHeight) 縮放圖片

源碼可見ImageUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ImageUtils Api Guide。

14、ListUtils

List工具類,可用于List常用操作,如:

isEmpty(List<V> sourceList) 判斷List是否為空或長(zhǎng)度為0

join(List<String> list, String separator) List轉(zhuǎn)換為字符串,并以固定分隔符分割

addDistinctEntry(List<V> sourceList, V entry) 向list中添加不重復(fù)元素

源碼可見ListUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ListUtils Api Guide。

15、MapUtils

Map工具類,可用于Map常用操作,如:

isEmpty(Map<K, V> sourceMap) 判斷map是否為空或長(zhǎng)度為0

parseKeyAndValueToMap(String  source, String keyAndValueSeparator, String keyAndValuePairSeparator,  boolean ignoreSpace) 字符串解析為map

toJson(Map<String, String> map) map轉(zhuǎn)換為json格式

源碼可見MapUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見MapUtils Api Guide。

16、ObjectUtils

Object工具類,可用于Object常用操作,如:

isEquals(Object actual, Object expected) 比較兩個(gè)對(duì)象是否相等

compare(V v1, V v2) 比較兩個(gè)對(duì)象大小

transformIntArray(int[] source)  Integer 數(shù)組轉(zhuǎn)換為int數(shù)組

源碼可見ObjectUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見ObjectUtils Api Guide。

17、SerializeUtils

序列化工具類,可用于序列化對(duì)象到文件或從文件反序列化對(duì)象,如:

deserialization(String filePath) 從文件反序列化對(duì)象

serialization(String filePath, Object obj) 序列化對(duì)象到文件

源碼可見SerializeUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見SerializeUtils Api Guide。

18、SystemUtils

系統(tǒng)信息工具類,可用于得到線程池合適的大小,目前功能薄弱,后面會(huì)進(jìn)行增強(qiáng)。如:

getDefaultThreadPoolSize() 得到跟系統(tǒng)配置相符的線程池大小

源碼可見SystemUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見SystemUtils Api Guide。

19、TimeUtils

時(shí)間工具類,可用于時(shí)間相關(guān)操作,如:

getCurrentTimeInLong() 得到當(dāng)前時(shí)間

getTime(long timeInMillis, SimpleDateFormat dateFormat) 將long轉(zhuǎn)換為固定格式時(shí)間字符串

源碼可見TimeUtils.java,更多方法及更詳細(xì)參數(shù)介紹可見TimeUtils Api Guide。

關(guān)于“Android有哪些常用工具類”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

標(biāo)題名稱:Android有哪些常用工具類
網(wǎng)站鏈接:http://www.chinadenli.net/article14/joejge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站小程序開發(fā)微信公眾號(hào)品牌網(wǎng)站制作域名注冊(cè)商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)