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 b6a8c663e..3488fa4b8 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 @@ -84,7 +84,7 @@ public class ApiConfig { public void loadConfig(boolean cache, Callback callback) { new Thread(() -> { if (cache) loadCache(Prefers.getUrl(), callback); - else loadJson(Prefers.getUrl(), callback); + else loadConfig(Prefers.getUrl(), callback); }).start(); } @@ -94,7 +94,7 @@ public class ApiConfig { else handler.post(() -> callback.error(R.string.error_config_get)); } - private void loadJson(String url, Callback callback) { + private void loadConfig(String url, Callback callback) { try { parseConfig(new Gson().fromJson(Decoder.getJson(url), JsonObject.class), callback); } catch (Exception e) { diff --git a/app/src/main/java/com/fongmi/android/tv/api/Decoder.java b/app/src/main/java/com/fongmi/android/tv/api/Decoder.java index 26f74a973..f730d5e40 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/Decoder.java +++ b/app/src/main/java/com/fongmi/android/tv/api/Decoder.java @@ -64,9 +64,9 @@ public class Decoder { } private static byte[] decodeHex(String s) { - int len = s.length(); - byte[] data = new byte[len / 2]; - for (int i = 0; i < len; i += 2) data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4) + Character.digit(s.charAt(i + 1), 16)); + int len = s.length() / 2; + byte[] data = new byte[len]; + for (int i = 0; i < len; i++) data[i] = Integer.valueOf(s.substring(i * 2, i * 2 + 2), 16).byteValue(); return data; } } diff --git a/app/src/main/java/com/fongmi/android/tv/utils/AES.java b/app/src/main/java/com/fongmi/android/tv/utils/AES.java deleted file mode 100644 index a3630e2a1..000000000 --- a/app/src/main/java/com/fongmi/android/tv/utils/AES.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.fongmi.android.tv.utils; - -import com.github.catvod.crawler.SpiderDebug; - -import org.json.JSONObject; - -import java.security.spec.AlgorithmParameterSpec; - -import javax.crypto.Cipher; -import javax.crypto.spec.IvParameterSpec; -import javax.crypto.spec.SecretKeySpec; - -public class AES { - - public static String rightPading(String key, String replace, int Length) { - String strReturn = ""; - String strtemp = ""; - int curLength = key.trim().length(); - if (key != null && curLength > Length) { - strReturn = key.trim().substring(0, Length); - } else if (key != null && curLength == Length) { - strReturn = key.trim(); - } else { - for (int i = 0; i < (Length - curLength); i++) { - strtemp = strtemp + replace; - } - strReturn = key.trim() + strtemp; - } - return strReturn; - } - - public static String ECB(String data, String key) { - try { - key = rightPading(key, "0", 16); - byte[] data2 = toBytes(data); - SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), "AES"); - Cipher cipher = Cipher.getInstance("AES/ECB/PKCS7Padding"); - cipher.init(Cipher.DECRYPT_MODE, keySpec); - return new String(cipher.doFinal(data2)); - } catch (Exception exception) { - SpiderDebug.log(exception); - } - return null; - } - - public static String CBC(String src, String KEY, String IV) { - try { - Cipher cipher = Cipher.getInstance("AES/CBC/PKCS7Padding"); - SecretKeySpec keySpec = new SecretKeySpec(KEY.getBytes(), "AES"); - AlgorithmParameterSpec paramSpec = new IvParameterSpec(IV.getBytes()); - cipher.init(Cipher.DECRYPT_MODE, keySpec, paramSpec); - return new String(cipher.doFinal(toBytes(src))); - } catch (Exception exception) { - SpiderDebug.log(exception); - } - return null; - } - - public static byte[] toBytes(String src) { - int l = src.length() / 2; - byte[] ret = new byte[l]; - for (int i = 0; i < l; i++) { - ret[i] = Integer.valueOf(src.substring(i * 2, i * 2 + 2), 16).byteValue(); - } - return ret; - } - - public static boolean isJson(String content) { - try { - new JSONObject(content); - return true; - } catch (Exception e) { - return false; - } - } - -} diff --git a/app/src/main/java/com/fongmi/android/tv/utils/Updater.java b/app/src/main/java/com/fongmi/android/tv/utils/Updater.java index 24a995a0a..8aa506aa1 100644 --- a/app/src/main/java/com/fongmi/android/tv/utils/Updater.java +++ b/app/src/main/java/com/fongmi/android/tv/utils/Updater.java @@ -22,7 +22,7 @@ import java.util.concurrent.Executors; public class Updater implements View.OnClickListener { - private static final String URL = "https://github.com/FongMi/TV/raw/main/release/leanback.json"; + private static final String URL = "https://raw.githubusercontent.com/FongMi/TV/release/release/leanback.json"; private static final String PROXY = "https://ghproxy.com/"; private final ExecutorService executor;