From 1a6111b7d17ba7b42ed894e4cf22c09ae45408ec Mon Sep 17 00:00:00 2001 From: FongMi Date: Mon, 16 Jan 2023 11:42:26 +0800 Subject: [PATCH] Clean code --- .../android/tv/ui/activity/DetailActivity.java | 3 +-- .../com/fongmi/android/tv/player/ParseTask.java | 2 +- .../com/fongmi/android/tv/player/Players.java | 1 + .../android/tv/ui/custom/CustomWebView.java | 16 ++++------------ 4 files changed, 7 insertions(+), 15 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 447e2b6fb..5f88ce8dc 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -800,6 +800,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis private void onError(String msg) { showError(msg); hideProgress(); + mPlayers.reset(); App.removeCallbacks(mR4); Clock.get().setCallback(null); checkNext(mBinding.flag.getSelectedPosition()); @@ -807,10 +808,8 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis private void checkNext(int position) { if (position == mFlagAdapter.size() - 1) { - mPlayers.stop(); checkSearch(); } else { - mPlayers.reset(); nextFlag(position); } } 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 40f88af47..a1e113f44 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 @@ -128,7 +128,7 @@ public class ParseTask { public void cancel() { if (executor != null) executor.shutdownNow(); - if (webView != null) webView.stop(false); + if (webView != null) webView.stop(); executor = null; callback = null; webView = null; 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 b4a5a5bfe..f08e8adf1 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 @@ -109,6 +109,7 @@ public class Players implements Player.Listener, IMediaPlayer.OnInfoListener, IM public void reset() { this.errorCode = 0; this.retry = 0; + stopParse(); } public int getRetry() { 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 23c016c90..65b6b28fd 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 @@ -115,26 +115,18 @@ public class CustomWebView extends WebView { String cookie = CookieManager.getInstance().getCookie(url); if (!TextUtils.isEmpty(cookie)) news.put("cookie", cookie); for (String key : headers.keySet()) if (keys.contains(key.toLowerCase())) news.put(key, headers.get(key)); - App.post(() -> { - onSuccess(news, url); - stop(false); - }); + App.post(() -> onSuccess(news, url)); } - public void stop(boolean error) { + public void stop() { stopLoading(); loadUrl("about:blank"); - if (error) App.post(this::onError); - else callback = null; + callback = null; } private void onSuccess(Map news, String url) { if (callback != null) callback.onParseSuccess(news, url, ""); callback = null; - } - - private void onError() { - if (callback != null) callback.onParseError(); - callback = null; + stop(); } }