第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

Android-Service系列之多線程斷點續(xù)傳下載

XRay_Chen 移動開發(fā)工程師
難度中級
時長 1小時32分
學習人數(shù)
綜合評分9.83
28人評價 查看評價
9.9 內(nèi)容實用
9.9 簡潔易懂
9.7 邏輯清晰
源碼下載:
github: https://github.com/103style/Download.
csdn: http://download.csdn.net/download/lxk_1993/9511182
說幾個注意點和改進點
生成list的 mFileList的時候 注意添加的fileinfo id要和position一致 不然會錯亂(這點不太好 比如加入刪除任務功能后會比較麻煩)
下載 停止按鈕注意不能多次點擊 可以在代碼中進行限制
退出aty時 線程仍然會下載一段時間且不會保存 可以在service的ondestory方法中對map mtasks遍歷 改ispaused為true
刪除未完成下載文件后 數(shù)據(jù)庫中未刪除,會導致下載不完整 ??梢栽趕ervice中初始化時判斷文件是否存在
確實有難度
感謝感謝,比51強

最新回答 / 依然丶丶丶
如果服務已經(jīng)存在,再次開啟服務是不會創(chuàng)建新的實例的,只會調(diào)用onStartCommand方法,(視頻中是繼續(xù)下載),當我們完成一個完整的動作或任務后是可以停止服務的,以為此時服務已經(jīng)沒有存在的意義,當我們有新的任務可以重新開啟一個。服務是Android四大組件之一,和activity是等級的,通俗點說,服務就是沒有UI界面的activity,如果服務里沒有代碼在運行,服務開著也是沒有什么開銷的,幾乎可以忽略不計。

最新回答 / MyBilly
這個一般都是最后一次文件寫入完時間沒有一個周期,最簡單的辦法,就是直接在接收到下載完成的廣播后,強制設置進度為100即可
listview建議用局部更新,就是在downloadTask里寫一個handler,調(diào)用getter,setter方法,然后再listviewadapter里new handler并通過sethandler()傳過去,然后再下載的進度與id通過handler發(fā)送過去,然后進行局部更新,還有很多小伙伴反應,下載進度不對,我用的也是老師的百分比方法,發(fā)現(xiàn)最后會變成負數(shù),于是我就把每次獲取到的length傳遞回去,通過holder.mypp.incrementProgressBy(length);可以正確顯示進度條,最后建議大家學完這個還是去看看框架吧,做起來相對簡單一點
這樣下載一點就刷新整個listview會不會太浪費了啊。。。。

最新回答 / 觸手摸不到的溫柔
當然會有問題的,好比一個用戶里有100元錢,同一時間段我在銀行取100,你用支付寶轉(zhuǎn)100,如果不加鎖,銀行就相當于執(zhí)行了200的消費服務。

最新回答 / 趟水過河
demo中進度值的設定有兩個: 文件的下載進度 和 當前線程的下載進度, ? 通過廣播發(fā)送的是文件的下載進度值,單個線程的進度值是用來記錄此線程的下載斷點的。 ?每個線程是都會發(fā)送廣播的,畢竟每個線程的更新,都表示著文件的下載進度的更新。
老師的邏輯好強,2課 我看了整整兩天才捋清思路
講得很詳細,贊??!
課程須知
適合有一定Android開發(fā)基礎的同學,要求學生能夠有很強的java中多線程以及線程池的基礎,靈活使用service和多線程結合實現(xiàn)斷點續(xù)傳功能。
老師告訴你能學到什么?
Activity和Service的通信方法 ListView和BaseAdapter的使用 數(shù)據(jù)庫操作 多線程分段下載的原理 線程池的使用 線程同步的應用 單例模式的應用 Notification的使用 Messenger的使用

微信掃碼,參與3人拼團

微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網(wǎng)的支持!

本次提問將花費2個積分

你的積分不足,無法發(fā)表

為什么扣積分?

本次提問將花費2個積分

繼續(xù)發(fā)表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消