Fix jar recent bug

pull/589/head
FongMi 1 year ago
parent 1712be5fd1
commit f096f7074a
  1. 2
      app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java
  2. 3
      app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java
  3. 10
      app/src/main/java/com/fongmi/android/tv/api/loader/BaseLoader.java
  4. 2
      app/src/main/java/com/fongmi/android/tv/api/loader/JarLoader.java

@ -179,7 +179,7 @@ public class LiveConfig {
private void initLive(JsonObject object) {
String spider = Json.safeString(object, "spider");
BaseLoader.get().parseJar(spider);
BaseLoader.get().parseJar(spider, false);
for (JsonElement element : Json.safeListElement(object, "lives")) {
Live live = Live.objectFrom(element);
if (lives.contains(live)) continue;

@ -167,8 +167,7 @@ public class VodConfig {
return;
}
String spider = Json.safeString(object, "spider");
BaseLoader.get().parseJar(spider);
BaseLoader.get().setRecent(spider);
BaseLoader.get().parseJar(spider, true);
for (JsonElement element : Json.safeListElement(object, "sites")) {
Site site = Site.objectFrom(element);
if (sites.contains(site)) continue;

@ -1,5 +1,7 @@
package com.fongmi.android.tv.api.loader;
import android.text.TextUtils;
import com.fongmi.android.tv.api.config.LiveConfig;
import com.fongmi.android.tv.api.config.VodConfig;
import com.fongmi.android.tv.bean.Live;
@ -80,12 +82,10 @@ public class BaseLoader {
}
}
public void parseJar(String jar) {
public void parseJar(String jar, boolean recent) {
if (TextUtils.isEmpty(jar)) return;
jarLoader.parseJar(Util.md5(jar), jar);
}
public void setRecent(String jar) {
jarLoader.setRecent(Util.md5(jar));
if (recent) jarLoader.setRecent(Util.md5(jar));
}
public DexClassLoader dex(String jar) {

@ -142,7 +142,7 @@ public class JarLoader {
public Object[] proxyInvoke(Map<String, String> params) {
try {
Method method = methods.get(Util.md5(recent));
Method method = methods.get(recent);
if (method == null) return null;
return (Object[]) method.invoke(null, params);
} catch (Throwable e) {

Loading…
Cancel
Save