-
下載位置,斷點續(xù)傳的重要點查看全部
-
網(wǎng)絡(luò)下載的關(guān)鍵點: 獲得網(wǎng)絡(luò)文件的長度; 在本地創(chuàng)建一個文件,設(shè)置其長度;查看全部
-
下載流程查看全部
-
RandomAccessFile seek()方法查看全部
-
service向activity傳遞參數(shù) activity也可以向service傳遞參數(shù)查看全部
-
網(wǎng)絡(luò)下載的關(guān)鍵點查看全部
-
文件bean查看全部
-
線程下載bean查看全部
-
下載流程圖查看全部
-
網(wǎng)絡(luò)下載關(guān)鍵點查看全部
-
思路分析查看全部
-
網(wǎng)絡(luò)下載的關(guān)鍵點查看全部
-
liu cheng查看全部
-
總結(jié): 照著這幾個點,再想一下。查看全部
-
主線程更新UI 1.主線程通過接收廣播來更新UI (如圖) 注冊廣播接收者 IntentFilter filter = new IntentFilter(); filter.addAction(DownloadService.ACTION_UPDATE); registerReceiver(mReceiver, filter); 2.在這里啟動DownloadTask public void handleMessage(Message msg) { switch (msg.what){ case MSG_INIT: FileInfo fileInfo = (FileInfo) msg.obj; //啟動下載任務(wù) mTask = new DownloadTask(DownloadService.this, fileInfo); mTask.downloadFile(); break; } } 3.在DownloadTask中開啟線程執(zhí)行下載任務(wù) public class DownloadTask { public void downloadFile(){ //讀取上次下載的信息 List<ThreadInfo> threadInfos = mDao.getThread(mFileInfo.getUrl()); ThreadInfo threadInfo = null; if(threadInfos.size() == 0){ //還沒開始下載,創(chuàng)建一個新線程信息 threadInfo = new ThreadInfo(0, mFileInfo.getUrl(), 0, mFileInfo.getLength(), 0); }else { threadInfo = threadInfos.get(0); } //創(chuàng)建子線程并開始下載 new DownloadThread(threadInfo).start(); }查看全部
舉報
0/150
提交
取消