diff --git a/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java b/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java index 731dfd88d..90bcb0026 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java +++ b/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java @@ -157,7 +157,7 @@ public class ApiConfig { if (hasLive) Config.create(config.getUrl(), 1); boolean loadApi = hasLive && LiveConfig.get().isSame(config.getUrl()); if (loadApi) LiveConfig.get().clear().config(Config.find(config.getUrl(), 1).update()).parse(object); - else if (LiveConfig.isEmpty()) LiveConfig.get().load(); + else if (LiveConfig.get().getHome() == null) LiveConfig.get().load(); } private String parseExt(String ext) { diff --git a/app/src/main/java/com/fongmi/android/tv/api/LiveConfig.java b/app/src/main/java/com/fongmi/android/tv/api/LiveConfig.java index c22845b57..15bfea12f 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/LiveConfig.java +++ b/app/src/main/java/com/fongmi/android/tv/api/LiveConfig.java @@ -42,7 +42,7 @@ public class LiveConfig { } public static boolean isEmpty() { - return get().getHome() == null; + return get().getHome() == null || get().getHome().getGroups().isEmpty(); } public LiveConfig init() { @@ -99,6 +99,7 @@ public class LiveConfig { if (!object.has("lives")) return; for (JsonElement element : Json.safeListElement(object, "lives")) parse(Live.objectFrom(element)); if (home == null) setHome(lives.isEmpty() ? new Live() : lives.get(0)); + LiveParser.start(home); } private void parse(Live live) { diff --git a/app/src/main/java/com/fongmi/android/tv/api/LiveParser.java b/app/src/main/java/com/fongmi/android/tv/api/LiveParser.java index 18cc4cf94..fb2d3cdc4 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/LiveParser.java +++ b/app/src/main/java/com/fongmi/android/tv/api/LiveParser.java @@ -25,6 +25,7 @@ public class LiveParser { } public static void start(Live live) { + if (live.getGroups().size() > 0) return; start(live, getText(live.getUrl())); }