From 3739c3b477126c8069cfa0d8d458bad2b367aa26 Mon Sep 17 00:00:00 2001 From: okjackcaptain <378702538@qq.com> Date: Tue, 29 Nov 2022 10:20:24 +0800 Subject: [PATCH] =?UTF-8?q?-=20drpy=E6=90=9C=E7=B4=A2=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E7=82=B9=E5=87=BB=E9=97=AA=E9=80=80bug=E4=BF=AE=E5=A4=8D=20(by?= =?UTF-8?q?=20okjack)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/com/github/tvbox/osc/js/JSEngine.java | 6 +++++- app/src/main/java/com/github/tvbox/osc/js/JSSpider.java | 8 +++----- .../github/tvbox/osc/ui/activity/FastSearchActivity.java | 1 - .../com/github/tvbox/osc/ui/activity/SearchActivity.java | 2 -- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/github/tvbox/osc/js/JSEngine.java b/app/src/main/java/com/github/tvbox/osc/js/JSEngine.java index a1414174..c358aea5 100644 --- a/app/src/main/java/com/github/tvbox/osc/js/JSEngine.java +++ b/app/src/main/java/com/github/tvbox/osc/js/JSEngine.java @@ -54,6 +54,10 @@ public class JSEngine { } } + public ES6Module getModule() { + return module; + } + public Spider getSpider(SourceBean sourceBean) { if (sourceBean.getExt().length() == 0) return new SpiderNull(); if (quickJS == null) init(); @@ -94,7 +98,7 @@ public class JSEngine { } module.setModuleUrl(sourceBean.getApi()); module.executeModuleScript(moduleJsStr, moduleName); - JSSpider spider = new JSSpider(module, key); + JSSpider spider = new JSSpider(key); String extJs = sourceBean.getExt().startsWith("http") ? sourceBean.getExt() : loadExt(sourceBean.getExt()); spider.init(App.getInstance(), extJs); spiders.put(sourceBean.getKey(), spider); diff --git a/app/src/main/java/com/github/tvbox/osc/js/JSSpider.java b/app/src/main/java/com/github/tvbox/osc/js/JSSpider.java index 1419d7bf..3a7c97a2 100644 --- a/app/src/main/java/com/github/tvbox/osc/js/JSSpider.java +++ b/app/src/main/java/com/github/tvbox/osc/js/JSSpider.java @@ -15,20 +15,18 @@ import java.util.List; public class JSSpider extends Spider { public String key; - private ES6Module module; - public JSSpider(ES6Module module, String key) { - this.module = module; + public JSSpider(String key) { this.key = key; } public final String jsEval(String str) { String jsStr = str.replace("__JS_SPIDER__", "globalThis." + this.key); if (str.startsWith("__JS_SPIDER__.init")) { - module.executeVoidScript(jsStr, null); + JSEngine.getInstance().getModule().executeVoidScript(jsStr, null); return ""; } - return module.executeStringScript(jsStr, null); + return JSEngine.getInstance().getModule().executeStringScript(jsStr, null); } @Override diff --git a/app/src/main/java/com/github/tvbox/osc/ui/activity/FastSearchActivity.java b/app/src/main/java/com/github/tvbox/osc/ui/activity/FastSearchActivity.java index 4dae0c12..cacede42 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/activity/FastSearchActivity.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/activity/FastSearchActivity.java @@ -25,7 +25,6 @@ import com.github.tvbox.osc.ui.adapter.FastSearchAdapter; import com.github.tvbox.osc.ui.adapter.SearchWordAdapter; import com.github.tvbox.osc.util.FastClickCheckUtil; import com.github.tvbox.osc.util.SearchHelper; -import com.github.tvbox.osc.js.JSEngine; import com.github.tvbox.osc.viewmodel.SourceViewModel; import com.google.gson.Gson; import com.google.gson.JsonArray; diff --git a/app/src/main/java/com/github/tvbox/osc/ui/activity/SearchActivity.java b/app/src/main/java/com/github/tvbox/osc/ui/activity/SearchActivity.java index 092874b9..06029ad9 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/activity/SearchActivity.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/activity/SearchActivity.java @@ -39,7 +39,6 @@ import com.github.tvbox.osc.util.FastClickCheckUtil; import com.github.tvbox.osc.util.HawkConfig; import com.github.tvbox.osc.util.LOG; import com.github.tvbox.osc.util.SearchHelper; -import com.github.tvbox.osc.js.JSEngine; import com.github.tvbox.osc.viewmodel.SourceViewModel; import com.google.gson.JsonArray; import com.google.gson.JsonElement; @@ -192,7 +191,6 @@ public class SearchActivity extends BaseActivity { if (video != null) { try { if (searchExecutorService != null) { - JSEngine.getInstance().stopAll(); pauseRunnable = searchExecutorService.shutdownNow(); searchExecutorService = null; }