Android 는 glide 와 rxjava 를 통 해 이미지 다운 로드 를 실현 합 니 다.

먼저 실현 방식 을 살 펴 보 자.
public void download(View view) {
        List baseBeanList = new ArrayList<>();
        for (int i = 0;i < paths.length; i++){
            BaseBean baseBean = new BaseBean();
            baseBean.setUrl(paths[i]);
            baseBean.setFilename("picture" + i);
            baseBeanList.add(baseBean);
        }
        new DownloadPicture.DownloadPictureBuilder(baseBeanList)
                .setLocalDir("/0000/")
                .setPictureFormat(PNG)
                .build()
                .download(MainActivity.this, new IDownload() {
            @Override
            public void start() {
                Log.i("download","start");
            }

            @Override
            public void progress(int progress) {
                Toast.makeText(MainActivity.this,"     :" + progress,Toast.LENGTH_SHORT).show();
                Log.i("download","     :" + progress);
            }

            @Override
            public void complete() {
                Toast.makeText(MainActivity.this,"    ",Toast.LENGTH_SHORT).show();
                Log.i("download","complete");
            }

            @Override
            public void fail(BaseBean baseBean) {
                Toast.makeText(MainActivity.this,"    " + baseBean.getFilename(),Toast.LENGTH_SHORT).show();
                Log.i("download","       :" + baseBean.getFilename());
            }

            @Override
            public void end() {
                Log.i("download","end");
            }

            @Override
            public void error(Exception e) {
                Log.i("download","    :" + e.getMessage());
            }
        });
    }

우선 filelist 가 있 습 니 다. 이것 은 필수 인자 입 니 다.
그리고 로 컬 디 렉 터 리, set 그림 저장 형식 을 설정 한 다음 IDownload 를 되 돌 릴 수 있 습 니 다.
이 다운로드 내부 에 로 컬 디 렉 터 리 생 성 이름 이 포함 되 어 있 습 니 다. 빈 문자열 로 대체 할 수 없습니다.
또한 이 방식 을 통 해 간단 한 건축 자 모델 의 실현 을 배 울 수 있다.
코드 는 그냥 GitHub 에서 만나요.https://github.com/sdgSnow/DownloadPicture

좋은 웹페이지 즐겨찾기