Downloader adalah perpustakaan unduhan cepat yang sangat ringan dan kuat, hanya berukuran sekitar 50KB. Untuk sebagian besar aplikasi, ini adalah perpustakaan unduhan yang paling hemat biaya. API yang disediakan oleh Downloader lebih sederhana dan ringan, dan Downloader menyediakan pengunduhan sinkron, pemberitahuan sistem kemajuan, dll. Fungsi.
Mendukung unduhan paralel multi-utas dan serial
Mendukung pengunduhan resume breakpoint
Mendukung transfer terpotong
Mendukung kemajuan pemberitahuan sistem
Mendukung unduhan sinkron dan asinkron
Mendukung jalur khusus
Mendukung penambahan header permintaan
Mendukung konfigurasi batas waktu
Berikan API sederhana
Mendukung unduhan yang dialihkan
Mendukung panggilan balik kemajuan
Coba lagi konfigurasi penghitungan
Mendukung instalasi otomatis setelah mengunduh file APK
Mendukung operasi seperti menjeda dan melanjutkan unduhan
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
Mendukung
implementasi 'com.github.Justson:Pengunduh:v5.0.4'
Androidx
implementasi 'com.github.Justson:Downloader:v5.0.4-androidx'
File file = UnduhImpl.getInstance(getApplicationContext()) .url("http://shouji.360tpcdn.com/170918/93d1695d87df5a0c0002058afc0361f1/com.ss.android.article.news_636.apk") .mendapatkan();
UnduhImpl.getInstance(getApplicationContext()) .url("http://shouji.360tpcdn.com/170918/f7aa8587561e4031553316ada312ab38/com.tencent.qqlive_13049.apk") .enqueue();
UnduhImpl.getInstance(getApplicationContext()) .target(File baru(ini.getExternalCacheDir(), "com.ss.android.article.news_636.apk")) .setUniquePath(salah) .setForceDownload(benar) .url("http://shouji.360tpcdn.com/170918/93d1695d87df5a0c0002058afc0361f1/com.ss.android.article.news_636.apk") .enqueue(new DownloadListenerAdapter() {@Overridepublic void onStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength, Extra extra) {super.onStart(url, userAgent, contentDisposition, mimetype, contentLength, extra); }@Overridepublic void onProgress(String url, lama diunduh, panjang panjang, lama digunakanWaktu) {super.onProgress(url, diunduh, panjang, waktu yang digunakan);Log.i(TAG, " kemajuan:" + diunduh + " url:" + url); }@Overridepublic boolean onResult(Dapat dibuang, jalur Uri, URL string, Ekstra ekstra) {Log.i(TAG, " jalur:" + jalur + " url:" + url + " panjang:" + File baru(path.getPath ()).length());return super.onResult(dapat dilempar, jalur, url, ekstra); } });
/data/data/com.download.sample(packagename)/cache/download/private/filename.jpg /data/data/com.download.sample(packagename)/cache/download/public/filename.jpg