From 0d8a082246d38595f62d6f1c9a6b10dabef331ee Mon Sep 17 00:00:00 2001 From: FongMi Date: Fri, 11 Apr 2025 16:19:42 +0800 Subject: [PATCH] Optimize proxy --- .../com/fongmi/android/tv/api/loader/JarLoader.java | 10 ++++++++-- .../com/fongmi/android/tv/server/process/Proxy.java | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/api/loader/JarLoader.java b/app/src/main/java/com/fongmi/android/tv/api/loader/JarLoader.java index 8cbef7f44..5535f2164 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/loader/JarLoader.java +++ b/app/src/main/java/com/fongmi/android/tv/api/loader/JarLoader.java @@ -141,9 +141,15 @@ public class JarLoader { } public Object[] proxyInvoke(Map params) { + for (Map.Entry entry : methods.entrySet()) { + Object[] result = proxyInvoke(entry.getValue(), params); + if (result != null) return result; + } + return null; + } + + private Object[] proxyInvoke(Method method, Map params) { try { - Method method = methods.get(recent); - if (method == null) return null; return (Object[]) method.invoke(null, params); } catch (Throwable e) { e.printStackTrace(); diff --git a/app/src/main/java/com/fongmi/android/tv/server/process/Proxy.java b/app/src/main/java/com/fongmi/android/tv/server/process/Proxy.java index 48c0d5e87..04681e169 100644 --- a/app/src/main/java/com/fongmi/android/tv/server/process/Proxy.java +++ b/app/src/main/java/com/fongmi/android/tv/server/process/Proxy.java @@ -27,7 +27,7 @@ public class Proxy implements Process { Response response = Response.newChunkedResponse(Status.lookup((Integer) rs[0]), (String) rs[1], (InputStream) rs[2]); if (rs.length > 3 && rs[3] != null) for (Map.Entry entry : ((Map) rs[3]).entrySet()) response.addHeader(entry.getKey(), entry.getValue()); return response; - } catch (Exception e) { + } catch (Throwable e) { return Nano.error(e.getMessage()); } }