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 4d62aa7d4..d4a3050b4 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 @@ -22,6 +22,7 @@ import com.github.catvod.bean.Header; import com.github.catvod.bean.Proxy; import com.github.catvod.utils.Json; import com.google.gson.JsonObject; +import com.google.gson.JsonParser; import java.util.ArrayList; import java.util.Collections; @@ -115,7 +116,7 @@ public class LiveConfig extends BaseConfig { @Override protected void load(Config config) throws Throwable { String json = Decoder.getJson(UrlUtil.convert(config.getUrl()), TAG); - if (Json.isObj(json)) checkJson(config, Json.parse(json).getAsJsonObject()); + if (Json.isObj(json)) checkJson(config, JsonParser.parseString(json).getAsJsonObject()); else parseText(config, json); } 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 5f8704216..3a3f6a731 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 @@ -19,6 +19,7 @@ import com.github.catvod.bean.Header; import com.github.catvod.bean.Proxy; import com.github.catvod.utils.Json; import com.google.gson.JsonObject; +import com.google.gson.JsonParser; import java.util.ArrayList; import java.util.Collections; @@ -112,7 +113,7 @@ public class VodConfig extends BaseConfig { @Override protected void load(Config config) throws Throwable { String json = Decoder.getJson(UrlUtil.convert(config.getUrl()), TAG); - checkJson(config, Json.parse(json).getAsJsonObject()); + checkJson(config, JsonParser.parseString(json).getAsJsonObject()); } @Override diff --git a/app/src/main/java/com/fongmi/android/tv/api/parser/LiveParser.java b/app/src/main/java/com/fongmi/android/tv/api/parser/LiveParser.java index 98e0adf5a..c614ad55d 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/parser/LiveParser.java +++ b/app/src/main/java/com/fongmi/android/tv/api/parser/LiveParser.java @@ -11,6 +11,7 @@ import com.fongmi.android.tv.bean.Live; import com.fongmi.android.tv.utils.UrlUtil; import com.github.catvod.net.OkHttp; import com.github.catvod.utils.Json; +import com.google.gson.JsonParser; import java.util.HashMap; import java.util.Map; @@ -302,8 +303,8 @@ public class LiveParser { private void header(String line) { try { - if (line.contains("#EXTHTTP:")) header.putAll(Json.toMap(Json.parse(line.split("#EXTHTTP:")[1].trim()))); - if (line.contains("header=")) header.putAll(Json.toMap(Json.parse(line.split("header=")[1].trim()))); + if (line.contains("#EXTHTTP:")) header.putAll(Json.toMap(JsonParser.parseString(line.split("#EXTHTTP:")[1].trim()))); + if (line.contains("header=")) header.putAll(Json.toMap(JsonParser.parseString(line.split("header=")[1].trim()))); } catch (Exception e) { e.printStackTrace(); } diff --git a/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java b/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java index cf57424b3..b20250878 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java +++ b/app/src/main/java/com/fongmi/android/tv/player/ParseJob.java @@ -20,6 +20,7 @@ import com.github.catvod.utils.Util; import com.google.common.net.HttpHeaders; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import com.google.gson.JsonParser; import java.util.ArrayList; import java.util.HashMap; @@ -115,7 +116,7 @@ public class ParseJob implements ParseCallback { private void jsonParse(Parse item, String webUrl, boolean fatal) throws Exception { try (Response res = OkHttp.newCall(item.getUrl() + webUrl, item.getHeader()).execute()) { - JsonObject object = Json.parse(res.body().string()).getAsJsonObject(); + JsonObject object = JsonParser.parseString(res.body().string()).getAsJsonObject(); String url = Json.safeString(object, "url"); JsonObject data = object.getAsJsonObject("data"); if (url.isEmpty()) url = Json.safeString(data, "url"); diff --git a/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java b/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java index 37a1f43d5..b1884207a 100644 --- a/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java +++ b/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java @@ -27,6 +27,7 @@ import com.fongmi.android.tv.api.config.VodConfig; import com.fongmi.android.tv.impl.CustomTarget; import com.github.catvod.utils.Json; import com.google.common.net.HttpHeaders; +import com.google.gson.JsonParser; import java.util.Collections; import java.util.HashSet; @@ -94,7 +95,7 @@ public class ImgUtil { } private static void addHeader(LazyHeaders.Builder builder, String header) { - Map map = Json.toMap(Json.parse(header)); + Map map = Json.toMap(JsonParser.parseString(header)); for (Map.Entry entry : map.entrySet()) builder.addHeader(UrlUtil.fixHeader(entry.getKey()), entry.getValue()); } diff --git a/catvod/src/main/java/com/github/catvod/utils/Json.java b/catvod/src/main/java/com/github/catvod/utils/Json.java index 780de22e7..0c2b598af 100644 --- a/catvod/src/main/java/com/github/catvod/utils/Json.java +++ b/catvod/src/main/java/com/github/catvod/utils/Json.java @@ -16,14 +16,6 @@ import java.util.Map; public class Json { - public static JsonElement parse(String json) { - try { - return JsonParser.parseString(json); - } catch (Throwable e) { - return new JsonObject(); - } - } - public static boolean isObj(String text) { try { if (TextUtils.isEmpty(text)) return false; @@ -79,7 +71,7 @@ public class Json { public static JsonObject safeObject(JsonElement element) { try { - if (element.isJsonPrimitive()) element = parse(element.getAsJsonPrimitive().getAsString()); + if (element.isJsonPrimitive()) element = JsonParser.parseString(element.getAsJsonPrimitive().getAsString()); return element.getAsJsonObject(); } catch (Exception e) { return new JsonObject(); @@ -87,7 +79,7 @@ public class Json { } public static Map toMap(String json) { - return TextUtils.isEmpty(json) ? null : toMap(parse(json)); + return TextUtils.isEmpty(json) ? null : toMap(JsonParser.parseString(json)); } public static Map toMap(JsonElement element) {