From 53bfee3597e5be38b574c919408564785413e7ab Mon Sep 17 00:00:00 2001 From: FongMi Date: Tue, 18 Apr 2023 22:08:29 +0800 Subject: [PATCH] Set default ua --- app/src/main/java/com/fongmi/android/tv/player/ExoUtil.java | 4 ++-- app/src/main/java/com/fongmi/android/tv/utils/Sniffer.java | 2 +- .../java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java | 2 +- .../src/main/java/tv/danmaku/ijk/media/player/ui/Utils.java | 1 + 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/player/ExoUtil.java b/app/src/main/java/com/fongmi/android/tv/player/ExoUtil.java index 59127b218..0cd32e19b 100644 --- a/app/src/main/java/com/fongmi/android/tv/player/ExoUtil.java +++ b/app/src/main/java/com/fongmi/android/tv/player/ExoUtil.java @@ -7,7 +7,6 @@ import androidx.media3.common.MediaItem; import androidx.media3.common.MimeTypes; import androidx.media3.common.PlaybackException; import androidx.media3.common.Tracks; -import androidx.media3.common.util.Util; import androidx.media3.database.DatabaseProvider; import androidx.media3.database.StandaloneDatabaseProvider; import androidx.media3.datasource.DataSource; @@ -35,6 +34,7 @@ import com.fongmi.android.tv.bean.Result; import com.fongmi.android.tv.bean.Sub; import com.fongmi.android.tv.utils.FileUtil; import com.fongmi.android.tv.utils.Prefers; +import com.fongmi.android.tv.utils.Sniffer; import com.google.common.net.HttpHeaders; import java.util.ArrayList; @@ -108,7 +108,7 @@ public class ExoUtil { } private static synchronized DataSource.Factory getDataSourceFactory(Map headers) { - if (!headers.containsKey(HttpHeaders.USER_AGENT)) headers.put(HttpHeaders.USER_AGENT, Util.getUserAgent(App.get(), App.get().getPackageName())); + if (!headers.containsKey(HttpHeaders.USER_AGENT)) headers.put(HttpHeaders.USER_AGENT, Sniffer.CHROME); if (dataSourceFactory == null) dataSourceFactory = buildReadOnlyCacheDataSource(new DefaultDataSource.Factory(App.get(), getHttpDataSourceFactory()), getCache()); httpDataSourceFactory.setDefaultRequestProperties(headers); return dataSourceFactory; 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 fdec81878..47caf5dc8 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 @@ -4,7 +4,7 @@ import java.util.regex.Pattern; public class Sniffer { - public static final String CHROME = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36"; + public static final String CHROME = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"; public static final Pattern RULE = Pattern.compile( "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\\?.*|" + diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java index 8795f7f83..df4f4e46b 100644 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java +++ b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java @@ -176,7 +176,7 @@ public class IjkVideoView extends FrameLayout implements MediaController.MediaPl } private void fixUserAgent() { - if (!mHeaders.containsKey(Utils.USER_AGENT)) mHeaders.put(Utils.USER_AGENT, Utils.getUserAgent(mAppContext)); + if (!mHeaders.containsKey(Utils.USER_AGENT)) mHeaders.put(Utils.USER_AGENT, Utils.CHROME); mIjkPlayer.setOption(format, "user_agent", mHeaders.get(Utils.USER_AGENT)); mHeaders.remove(Utils.USER_AGENT); } diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/Utils.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/Utils.java index da5235001..22d7a7233 100644 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/Utils.java +++ b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/Utils.java @@ -9,6 +9,7 @@ import android.util.DisplayMetrics; public class Utils { public static final String USER_AGENT = "User-Agent"; + public static final String CHROME = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"; public static float dp2px(Context context, float dpValue) { return Math.round((dpValue * context.getResources().getDisplayMetrics().densityDpi) / DisplayMetrics.DENSITY_DEFAULT);