Android 정지점 리 셋 다운로드 기 JarvisDownloader 의 예제
마 블 영 화 를 잘 아 는 사람들 은 자 비 스 를 잘 알 고 있다.그 는 아 이언 맨 의 스마트 집사 로 아 이언 맨 의 장갑 제조,대량의 데이터 분석,모델 링 협조 등 각종 스마트 작업 을 도 왔 다.안 타 깝 게 도 재 련 2 에서 자 비 스 는 영혼 의 보석 과 함께 Vision 을 합성 했다.아 이언 맨 은 가족 같은 스마트 AI 를 잃 었 고 나중에 토 니 는 자 비 스 의 일 을 F.R.I.D.A.Y 로 대체 했다.그러나 아 이언 맨 과 프 라이 데 이의 상호작용 을 보면 프 라이 데 이 를 일반적인 AI 로 만 생각 하고 자 비 스 를 대 하 는 감정 에 몰입 하지 않 았 다.
최근 재 연 3 개봉,중국 동시 개봉 하지 않 았 습 니 다.정말 아 쉽 습 니 다.노동절 은 홍콩 에 가서 보 려 고 했 지만 그 때 는 사람 이 많 을 거 라 고 생각 했 습 니 다.그래서 방학 동안 여가 시간 에 Jarvis Downloader 를 없 앴 습 니 다.Jarvis 라 는 이름 을 가 진 이 유 는 제 가 Jarvis 라 는 AI 를 너무 좋아 하기 때 문 입 니 다.인공지능 의 정상 에 속 하기 때 문 입 니 다!JarvisDownloader 는 Jarvis 만큼 강하 지 는 않 지만 파일 을 다운로드 하 는 데 는 많은 장점 을 갖 추고 있다.
주요 기능
원 격 라 이브 러 리 의존
gradle
repositories {
maven{
url "https://jitpack.io"
}
}
dependencies {
api 'com.github.yuwenque:JarvisDownloader:0.2.0'
}
데이터베이스 초기 화
Jarvis.init(new DefaultDownloadHistoryDBHelper(applicationContext));
AbsDownloadHistoryDBHelper 에 계승 되 는 관리 클래스 를 사용자 정의 할 수 있 습 니 다.다운로드 진 도 를 저장 하 는 데 사 용 됩 니 다.자세 한 작업 은 Default DownloadHistoryDBHelper 를 참고 하 십시오.권한 설정
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Jarvis.Downloader 구축 다운로드 작업activity 나 service 에서 호출 하 십시오.
//
Jarvis.Downloader downloader = Jarvis.with(this).withUrl("http://pic1.win4000.com/wallpaper/2017-10-11/59dde2bca944f.jpg");
// ui
downloader.allowBackgroundDownload(true);
//
downloader.threadCount(3);
// , , Environment.getExternalStorageDirectory()+File.separator+"Jarvis"
downloader.filePath(Environment.getExternalStorageDirectory() + File.separator + "Jarvis");
// , , ,
downloader.fileName("test.jpg");
// ( ), 100
downloader.refreshTime(1000);
//
// context activity Jarvis , activity.runOnUiThread
downloader.setDownloadListener(new DownloadListener() {
/**
*
* @param file
*/
@Override
public void onSuccess(File file) {
}
/**
*
* @param downloadedSize
* @param progress 0-1.0
*/
@Override
public void onProgress(long downloadedSize, float progress) {
}
/**
*
*/
@Override
public void onStart() {
}
/**
*
*/
@Override
public void onPause() {
}
/**
*
*/
@Override
public void onFail() {
}
/**
*
* @param b
*/
@Override
public void onDelete(boolean b) {
}
});
//
downloader.download();
//
downloader.pause();
//
downloader.recovery();
// , ,
downloader.delete();
// ,
downloader.deleteCacheFile();
//
downloader.getDownloadState();
// , ,
downloader.getDownloadedProgress();
//
downloader.getDownloadedProgress(new DataCallBack<Float>() {
@Override
public void onData(Float progress) {
}
});
상기 코드 도 다음 과 같은 형식 으로 간소화 할 수 있다.
Jarvis.with(this)
.withUrl("http://pic1.win4000.com/wallpaper/2017-10-11/59dde2bca944f.jpg")
.allowBackgroundDownload(true)
.threadCount(3)
.filePath(Environment.getExternalStorageDirectory() + File.separator + "Jarvis")
.fileName("test.jpg")
.refreshTime(1000)
.setDownloadListener(listener).download();
Jarvis 관리 다운로드 작업
// ,
Jarvis.getInstance().getDownloadedList(new DataCallBack<List<LocalFileRecordBean>>() {
@Override
public void onData(List<LocalFileRecordBean> localFileRecordBeans) {
LocalFileRecordBean fileRecordBean= localFileRecordBeans.get(0);
//
float progress = fileRecordBean.getDownloadedLength()*1.0f/fileRecordBean.getFileTotalLength();
}
});
//
Jarvis.getInstance().pauseAllDownloader();
//
Jarvis.getInstance().startAllDownload();
//
Jarvis.getInstance().forceDeleteAll();
// , 10 ,
// 3 , 20 ,
Jarvis.getInstance().initThreadPoolLength(20);
원본 코드 읽 기https://github.com/yuwenque/JarvisDownloader로 이동 하 십시오.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.