Android使用Xutils3進行斷點下載的實例
使用工具:Android studio 3.0
使用方法:
一:在build.gradle(Module:app)中添加依賴
implementaion 'org.xutils:xutils:3.5.1'
二:單獨創(chuàng)建一個MyApp類初始化xutils,類名可自定義
public class MyApp extends Application { @Override public void onCreate() { super.onCreate(); x.Ext.init(this); } }
三:在AndroidManifest中添加權限并注冊MyApp
//添加權限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
//注冊MyApp在<application>節(jié)點中添加android:name=".MyApp'
四:使用下載方法
public void download(View view){ String path=et.getText().toString().trim(); RequestParams params=new RequestParams(path); params.setSaveFilePath(Environment.getExternalStorageDirectory()+"/myapp/"); params.setAutoRename(true); x.http().post(params,new Callback.ProgressCallback<File>(){ @Override public void onWaiting() { } @Override public void onStarted() { } @Override public void onLoading(long total, long current, boolean isDownloading) { pd.setMax((int)total); pd.setProgress((int)current); } @Override public void onSuccess(File result) { Log.i("TEST","下載完成"); } @Override public void onError(Throwable ex, boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } }); }
知識點擴展:
xUtils3簡介
xUtils 包含了orm, http(s), image, view注解, 但依然很輕量級(246K), 并且特性強大, 方便擴展:
- 穩(wěn)定的基石: AbsTask和統(tǒng)一的回調接口Callback, 任何異常, 即使你的回調方法實現(xiàn)有異常都會進入onError, 任何情況下onFinished總會讓你知道任務結束了.
- 基于高效穩(wěn)定的orm工具, http模塊得以更方便的實現(xiàn)cookie(支持domain, path, expiry等特性)和 緩存(支持Cache-Control, Last-Modified, ETag等特性)的支持.
- 有了強大的http及其下載緩存的支持, image模塊的實現(xiàn)相當的簡潔, 并且支持回收被view持有, 但被Mem Cache移除的圖片, 減少頁面回退時的閃爍.
- view注解模塊僅僅400多行代碼卻靈活的支持了各種View注入和事件綁定, 包括擁有多了方法的listener的支持.
相關文章
Android編程實現(xiàn)為ListView創(chuàng)建上下文菜單(ContextMenu)的方法
這篇文章主要介紹了Android編程實現(xiàn)為ListView創(chuàng)建上下文菜單(ContextMenu)的方法,簡單分析了上下文菜單的功能及ListView創(chuàng)建上下文菜單(ContextMenu)的具體步驟與相關操作技巧,需要的朋友可以參考下2017-02-02