Glide获取 ImageURL本地路径

   private void getImageUrlPath(){

        Observable.create(new ObservableOnSubscribe<File>() {
            @Override
            public void subscribe(@NonNull ObservableEmitter<File> emitter) throws Exception {
                try {

                    FutureTarget<File> future = Glide.with(getContext())
                            .load(ImageUrl)
                            .downloadOnly(200, 200);
                    File cacheFile = future.get();

                    emitter.onNext(cacheFile);
                } catch (Exception e) {
                    e.printStackTrace();
                    emitter.onComplete();
                }
            }

        }).subscribeOn(Schedulers.io())
                .doOnSubscribe(new Consumer<Disposable>() {
                    @Override
                    public void accept(@NonNull Disposable disposable) throws Exception {
                     showProgressBar();
                    }
                })
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(new Observer<File>() {

                    @Override
                    public void onSubscribe(@NonNull Disposable d) {
                        addDisposable(d);

                    }

                    @Override
                    public void onError(@NonNull Throwable e) {
                        e.printStackTrace();
                        hideProgressBar();
                    }

                    @Override
                    public void onComplete() {
                        hideProgressBar();
                    }
                    @Override
                    public void onNext(@NonNull File file) {
                        if (file != null) {
                            try {
                                filePath = file.getAbsolutePath();
                                LogUtil.d("wds",filePath);
                            } catch (Exception e) {
                                e.printStackTrace();
                            }

                        }
                    }

                });



    }
发布了257 篇原创文章 · 获赞 136 · 访问量 107万+

猜你喜欢

转载自blog.csdn.net/wds1181977/article/details/102817828