From 993394b09ed0e868c653c4fac622f573b70720af Mon Sep 17 00:00:00 2001 From: FongMi Date: Wed, 17 Aug 2022 16:22:47 +0800 Subject: [PATCH] Add parse from --- .../leanback/res/layout/view_controller_bottom.xml | 5 +++-- .../java/com/fongmi/android/tv/player/ParseTask.java | 12 ++++++------ .../java/com/fongmi/android/tv/player/Players.java | 5 ++++- .../fongmi/android/tv/ui/custom/CustomWebView.java | 2 +- app/src/main/res/values-zh-rCN/strings.xml | 4 ++++ app/src/main/res/values-zh-rTW/strings.xml | 4 ++++ app/src/main/res/values/strings.xml | 4 ++++ 7 files changed, 26 insertions(+), 10 deletions(-) diff --git a/app/src/leanback/res/layout/view_controller_bottom.xml b/app/src/leanback/res/layout/view_controller_bottom.xml index 069218123..a7c4a9e0f 100644 --- a/app/src/leanback/res/layout/view_controller_bottom.xml +++ b/app/src/leanback/res/layout/view_controller_bottom.xml @@ -164,13 +164,14 @@ android:layout_marginTop="16dp" android:gravity="center_vertical" android:orientation="horizontal" - android:visibility="gone"> + android:visibility="gone" + tools:visibility="visible"> diff --git a/app/src/main/java/com/fongmi/android/tv/player/ParseTask.java b/app/src/main/java/com/fongmi/android/tv/player/ParseTask.java index 430581ceb..20066e2c6 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/ParseTask.java +++ b/app/src/main/java/com/fongmi/android/tv/player/ParseTask.java @@ -75,7 +75,7 @@ public class ParseTask { JsonObject object = JsonParser.parseString(response.body().string()).getAsJsonObject(); HashMap headers = new HashMap<>(); for (String key : object.keySet()) if (key.equalsIgnoreCase("user-agent") || key.equalsIgnoreCase("referer")) headers.put(key, object.get(key).getAsString()); - onParseSuccess(headers, object.get("url").getAsString()); + onParseSuccess(headers, object.get("url").getAsString(), ""); } catch (Exception e) { e.printStackTrace(); onParseError(); @@ -91,7 +91,7 @@ public class ParseTask { } else if (result.getParse() == 1) { handler.post(() -> Players.get().web().start(result.getUrl(), callback)); } else { - onParseSuccess(result.getHeaders(), result.getUrl()); + onParseSuccess(result.getHeaders(), result.getUrl(), result.getJxFrom()); } } @@ -110,13 +110,13 @@ public class ParseTask { } else if (result.getParse() == 1) { handler.post(() -> Players.get().web().start(result.getUrl(), callback)); } else { - onParseSuccess(result.getHeaders(), result.getUrl()); + onParseSuccess(result.getHeaders(), result.getUrl(), result.getJxFrom()); } } - private void onParseSuccess(Map headers, String url) { + private void onParseSuccess(Map headers, String url, String from) { handler.post(() -> { - if (callback != null) callback.onParseSuccess(headers, url); + if (callback != null) callback.onParseSuccess(headers, url, from); }); } @@ -134,7 +134,7 @@ public class ParseTask { public interface Callback { - void onParseSuccess(Map headers, String url); + void onParseSuccess(Map headers, String url, String from); void onParseError(); } diff --git a/app/src/main/java/com/fongmi/android/tv/player/Players.java b/app/src/main/java/com/fongmi/android/tv/player/Players.java index c62a33b4f..074bbad22 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/Players.java +++ b/app/src/main/java/com/fongmi/android/tv/player/Players.java @@ -7,6 +7,8 @@ import com.fongmi.android.tv.R; import com.fongmi.android.tv.bean.Result; import com.fongmi.android.tv.event.PlayerEvent; import com.fongmi.android.tv.ui.custom.CustomWebView; +import com.fongmi.android.tv.utils.Notify; +import com.fongmi.android.tv.utils.ResUtil; import com.google.android.exoplayer2.ExoPlayer; import com.google.android.exoplayer2.PlaybackException; import com.google.android.exoplayer2.Player; @@ -158,7 +160,8 @@ public class Players implements Player.Listener, ParseTask.Callback { } @Override - public void onParseSuccess(Map headers, String url) { + public void onParseSuccess(Map headers, String url, String from) { + if (from.length() > 0) Notify.show(ResUtil.getString(R.string.parse_from, from)); setMediaSource(headers, url); } diff --git a/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java b/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java index a3bc31784..5ebec0ab0 100644 --- a/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java +++ b/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java @@ -105,7 +105,7 @@ public class CustomWebView extends WebView { for (String key : headers.keySet()) if (keys.contains(key.toLowerCase())) news.put(key, headers.get(key)); handler.removeCallbacks(mTimer); handler.post(() -> { - callback.onParseSuccess(news, url); + callback.onParseSuccess(news, url, ""); stop(false); }); } diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 434a0f1ee..f488a7684 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -45,6 +45,10 @@ 重置 片头片尾 + + 解析 + 解析来自:%s + 首页 配置 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 863eec21b..149df8cf2 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -45,6 +45,10 @@ 重置 片頭片尾 + + 解析 + 解析來自:%s + 首頁 配置 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d4ffa81f6..747b13e14 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -45,6 +45,10 @@ Reset OP&ED + + Parse + Parse from: %s + Home site Configure