浏览代码

InterceptorUtil.java
LogUtil.java

niusongtao@dl-cg.com 5 年之前
父节点
当前提交
6db4efd1d9
共有 1 个文件被更改,包括 43 次插入10 次删除
  1. 43 10
      base_library/src/main/java/com/mgtech/base_library/util/HtmlImageGetterUtil.java

+ 43 - 10
base_library/src/main/java/com/mgtech/base_library/util/HtmlImageGetterUtil.java

@@ -20,8 +20,10 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.FutureTask;
 
 import io.reactivex.Observable;
+import io.reactivex.Observer;
 import io.reactivex.Scheduler;
 import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
 import io.reactivex.functions.Action;
 import io.reactivex.schedulers.Schedulers;
 
@@ -59,30 +61,61 @@ public class HtmlImageGetterUtil implements Html.ImageGetter{
     FutureTask<Drawable> drawableFutureTask;
     private void getHtmlDrawable(String source){
 
-        drawableFutureTask = new FutureTask<Drawable>(new Callable<Drawable>() {
+        drawableFutureTask = new FutureTask<Drawable>(new Runnable() {
             @Override
-            public Drawable call() throws Exception {
+            public void run() {
                 InputStream inputStream = null;
                 try {
                     inputStream = (InputStream) new URL(source).getContent();
                     drawable = Drawable.createFromStream(inputStream, "src");
                     drawable.setBounds(0,0,drawable.getMinimumWidth(),drawable.getMinimumHeight());
                     inputStream.close();
-                    return drawable;
+                    LogUtil.e("getHtmlDrawable","..................");
                 } catch (Exception e) {
-                    return null;
+                    LogUtil.e("getHtmlDrawable",".................." + e.toString());
                 }
             }
-        });
+        },drawable);
 
-        Scheduler.Worker worker = Schedulers.io().createWorker();
-        worker.schedule(new Runnable() {
+//        drawableFutureTask = new FutureTask<Drawable>(new Callable<Drawable>() {
+//            @Override
+//            public Drawable call() throws Exception {
+//                InputStream inputStream = null;
+//                try {
+//                    inputStream = (InputStream) new URL(source).getContent();
+//                    drawable = Drawable.createFromStream(inputStream, "src");
+//                    drawable.setBounds(0,0,drawable.getMinimumWidth(),drawable.getMinimumHeight());
+//                    inputStream.close();
+//                    LogUtil.e("getHtmlDrawable","..................");
+//                    return drawable;
+//                } catch (Exception e) {
+//                    LogUtil.e("getHtmlDrawable",".................." + e.toString());
+//                    return null;
+//                }
+//            }
+//        });
+
+        Observable.fromFuture(drawableFutureTask).subscribe(new Observer<Drawable>() {
             @Override
-            public void run() {
+            public void onSubscribe(Disposable d) {
+                LogUtil.e("onSubscribe","..................");
                 drawableFutureTask.run();
             }
-        });
 
-        Observable<Drawable> observable = Observable.fromFuture(drawableFutureTask);
+            @Override
+            public void onNext(Drawable drawable) {
+                LogUtil.e("onNext","..................");
+            }
+
+            @Override
+            public void onError(Throwable e) {
+                LogUtil.e("onError",".................." + e.toString());
+            }
+
+            @Override
+            public void onComplete() {
+
+            }
+        });
     }
 }