From 821534ec4c0f21e4e4fe869c50965fcb9ae68934 Mon Sep 17 00:00:00 2001 From: FongMi Date: Fri, 14 Mar 2025 12:18:37 +0800 Subject: [PATCH] Fix recent jar --- .../java/com/fongmi/android/tv/api/config/LiveConfig.java | 2 +- .../java/com/fongmi/android/tv/api/config/VodConfig.java | 3 ++- .../java/com/fongmi/android/tv/api/loader/BaseLoader.java | 6 +++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java b/app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java index d2da44726..0a8197057 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java +++ b/app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java @@ -170,7 +170,6 @@ public class LiveConfig { try { initLive(object); initOther(object); - BaseLoader.get().parseJar(Json.safeString(object, "spider")); } catch (Throwable e) { e.printStackTrace(); } finally { @@ -180,6 +179,7 @@ public class LiveConfig { private void initLive(JsonObject object) { String spider = Json.safeString(object, "spider"); + BaseLoader.get().parseJar(spider); for (JsonElement element : Json.safeListElement(object, "lives")) { Live live = Live.objectFrom(element); if (lives.contains(live)) continue; diff --git a/app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java b/app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java index f8f708221..f5418625c 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java +++ b/app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java @@ -149,7 +149,6 @@ public class VodConfig { initSite(object); initParse(object); initOther(object); - BaseLoader.get().parseJar(Json.safeString(object, "spider")); if (loadLive && object.has("lives")) initLive(object); String notice = Json.safeString(object, "notice"); config.logo(Json.safeString(object, "logo")); @@ -168,6 +167,8 @@ public class VodConfig { return; } String spider = Json.safeString(object, "spider"); + BaseLoader.get().parseJar(spider); + BaseLoader.get().setRecent(spider); for (JsonElement element : Json.safeListElement(object, "sites")) { Site site = Site.objectFrom(element); if (sites.contains(site)) continue; diff --git a/app/src/main/java/com/fongmi/android/tv/api/loader/BaseLoader.java b/app/src/main/java/com/fongmi/android/tv/api/loader/BaseLoader.java index 6c6c8b2c8..7e8836cf8 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/loader/BaseLoader.java +++ b/app/src/main/java/com/fongmi/android/tv/api/loader/BaseLoader.java @@ -67,7 +67,7 @@ public class BaseLoader { boolean csp = api.startsWith("csp_"); if (js) jsLoader.setRecent(key); else if (py) pyLoader.setRecent(key); - else if (csp) jarLoader.setRecent(jar); + else if (csp) jarLoader.setRecent(Util.md5(jar)); } public Object[] proxyLocal(Map params) { @@ -84,6 +84,10 @@ public class BaseLoader { jarLoader.parseJar(Util.md5(jar), jar); } + public void setRecent(String jar) { + jarLoader.setRecent(Util.md5(jar)); + } + public DexClassLoader dex(String jar) { return jarLoader.dex(jar); }