全國- 「切換城市」 培訓(xùn)家旗下培訓(xùn)平臺
手機(jī)版
網(wǎng)站導(dǎo)航

學(xué)習(xí)Android開發(fā)有哪些技巧呢

2020.03.20

發(fā)布者:網(wǎng)上發(fā)布

??在Android中,線程分為主線程和子線程。主界面用于與用戶交互,進(jìn)行UI的相關(guān)操作,而子線程則負(fù)責(zé)耗時(shí)操作。如果在主線程中進(jìn)行耗時(shí)操作,就會使程序無法及時(shí)的響應(yīng)。因此,耗時(shí)操作必須放在子線程中進(jìn)行。為了方便你快速清晰地了解線程與安卓開發(fā),本文將從以下幾個(gè)方面為你闡述
??1 主線程和子線程
??主線程是指進(jìn)程所有用的線程,在Android中即指進(jìn)行UI與用戶交互的線程就是主線程。因此在Android開發(fā)中,需要盡可能的把耗時(shí)操作,網(wǎng)絡(luò)請求訪問操作,數(shù)據(jù)庫讀取操作等放在子線程,以避免主線程長期處于占用狀態(tài)以降低用戶體驗(yàn)。系統(tǒng)要求網(wǎng)絡(luò)訪問必須在子線程中進(jìn)行,否則會拋出NetworkOnMainThreadException異常。
??2 線程形態(tài)
??Android中的線程形態(tài)有傳統(tǒng)的Thread,AsyncTask,HandlerThread和IntentService。
??AsyncTask封裝了Thread和Handler,必須在主線程進(jìn)行調(diào)用,它可以在子線程中執(zhí)行任務(wù),然后將執(zhí)行的結(jié)果傳遞給主線程并更新UI。但AsyncTask并不適合執(zhí)行特別耗時(shí)的任務(wù)。
??AsyncTask是一個(gè)泛型類,提供了三個(gè)泛型參數(shù):Params,Progress和Result。
??Params表示參數(shù)的類型
??Progress表示后臺任務(wù)的執(zhí)行進(jìn)度的類型
??Result表示后臺任務(wù)返回結(jié)果的類型
??AsyncTask的聲明:
??2.1.2 方法:
??AsyncTask提供了一些核心方法:
??onPreExecute在主線程中調(diào)用用來進(jìn)行異步任務(wù)的準(zhǔn)備操作。
??doInBackground(Params……params)在執(zhí)行完onPreExecute后進(jìn)行子線程任務(wù)時(shí)自動調(diào)用,Params表示異步任務(wù)的輸入?yún)?shù)。在方法中可以通過publishProgress更新任務(wù)的完成進(jìn)度,同時(shí)在結(jié)束調(diào)用后會返回結(jié)果給onPostExecute方法。
??onProgressUpdate(Params……params)在主線程中用于顯示任務(wù)進(jìn)行的進(jìn)度,在publishProgress方法中被調(diào)用。
??onProgressExecute(Result result)在主線程中用戶獲取任務(wù)結(jié)束后回返的結(jié)果,即doInBackground的返回值。
??onCancelled在主線程中執(zhí)行,當(dāng)異步任務(wù)被取消后不會執(zhí)行onProgressExecute方法而會執(zhí)行onCancelled方法。

上一篇:幼兒時(shí)期學(xué)習(xí)英語的好處 下一篇:孩子在幼兒時(shí)期學(xué)習(xí)英語的優(yōu)勢有哪些

推薦機(jī)構(gòu)

熱門課程

本站展示的所有信息內(nèi)容系由機(jī)構(gòu)或個(gè)人用戶發(fā)布,可能存在發(fā)布者所發(fā)布的信息,并未獲得品牌所有人有效授權(quán)。本平臺會加強(qiáng)審核,但無法完全排除差錯(cuò)或疏漏。鄭重聲明:本平臺僅為免費(fèi)注冊用戶提供免費(fèi)的信息發(fā)布渠道,但不對其發(fā)布信息的真實(shí)性、準(zhǔn)確性和合法性負(fù)責(zé),對此也不承擔(dān)任何法律責(zé)任。對于從本網(wǎng)站或本網(wǎng)站的任何有關(guān)服務(wù)所獲得的資訊、內(nèi)容或廣告,您接受或信賴任何信息所產(chǎn)生之風(fēng)險(xiǎn)應(yīng)自行承擔(dān),本網(wǎng)對任何使用或提供本網(wǎng)站信息的商業(yè)活動及其風(fēng)險(xiǎn)不承擔(dān)任何責(zé)任。,如果侵犯,請及時(shí)通知我們,發(fā)送郵件至15610150293@126.com本網(wǎng)站將在第一時(shí)間及時(shí)刪除。

亚洲∧v久久久无码精品色欲_2019精品无码不卡_制服丝袜无码中文字幕在线_97精品国产自在现线免费观看

日韩精品亚洲春色欧美激情 | 曰韩第一页综合久久道 | 亚洲综合中文字线观看看 | 日本特级婬片中文免费看 | 久久久人成影片一区二区三区 | 中国久久精品综合网 |