diff --git a/app/src/leanback/res/values/styles.xml b/app/src/leanback/res/values/styles.xml index 6a67aa1ad..b9d4045b8 100644 --- a/app/src/leanback/res/values/styles.xml +++ b/app/src/leanback/res/values/styles.xml @@ -22,8 +22,10 @@ @@ -32,6 +34,7 @@ fill true false + @drawable/radio 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 6226d1ead..39b9b93b5 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 @@ -5,6 +5,8 @@ import android.content.Context; import android.net.http.SslError; import android.os.Handler; import android.os.Looper; +import android.text.TextUtils; +import android.webkit.CookieManager; import android.webkit.SslErrorHandler; import android.webkit.WebResourceRequest; import android.webkit.WebResourceResponse; @@ -110,6 +112,8 @@ public class CustomWebView extends WebView { private void post(Map headers, String url) { Map news = new HashMap<>(); + 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)); handler.removeCallbacks(mTimer); handler.post(() -> { diff --git a/app/src/main/java/com/fongmi/android/tv/utils/Sniffer.java b/app/src/main/java/com/fongmi/android/tv/utils/Sniffer.java index dcd360309..ae7ec80b4 100644 --- a/app/src/main/java/com/fongmi/android/tv/utils/Sniffer.java +++ b/app/src/main/java/com/fongmi/android/tv/utils/Sniffer.java @@ -5,8 +5,8 @@ import java.util.regex.Pattern; public class Sniffer { public static final Pattern RULE = Pattern.compile( - "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)\\?.*|" + - "http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)|" + + "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a)\\?.*|" + + "http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a)|" + "http((?!http).)*?xg.php\\?id=|" + "http((?!http).)*?video/tos*" ); diff --git a/app/src/main/res/drawable/radio.png b/app/src/main/res/drawable/radio.png new file mode 100644 index 000000000..5abe3e119 Binary files /dev/null and b/app/src/main/res/drawable/radio.png differ