From 668c9d90ecd02956ac2b1a93d1d7f0af6151f844 Mon Sep 17 00:00:00 2001 From: 21561 <215613905@qq.com> Date: Tue, 27 Sep 2022 23:39:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=97=85=E6=8E=A2=E5=86=8D=E6=AC=A1=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20=E8=A7=A3=E5=86=B3=E5=80=92?= =?UTF-8?q?=E5=8F=99=E5=90=8E=E7=9B=B8=E5=90=8C=E4=BD=8D=E7=BD=AE=E9=9B=86?= =?UTF-8?q?=E6=95=B0=E6=92=AD=E6=94=BE=E8=BF=9B=E5=BA=A6=E6=9C=AA=E9=87=8D?= =?UTF-8?q?=E7=BD=AE=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../github/tvbox/osc/ui/activity/DetailActivity.java | 2 +- .../com/github/tvbox/osc/ui/activity/PlayActivity.java | 7 +++++-- .../com/github/tvbox/osc/ui/fragment/PlayFragment.java | 10 +++++++--- .../java/com/github/tvbox/osc/util/DefaultConfig.java | 2 +- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/github/tvbox/osc/ui/activity/DetailActivity.java b/app/src/main/java/com/github/tvbox/osc/ui/activity/DetailActivity.java index f8f7e000..a58b6514 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/activity/DetailActivity.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/activity/DetailActivity.java @@ -189,7 +189,7 @@ public class DetailActivity extends BaseActivity { vodInfo.reverseSort = !vodInfo.reverseSort; isReverse = !isReverse; vodInfo.reverse(); -// vodInfo.playIndex=(vodInfo.seriesMap.get(vodInfo.playFlag).size()-1)-vodInfo.playIndex; + vodInfo.playIndex=(vodInfo.seriesMap.get(vodInfo.playFlag).size()-1)-vodInfo.playIndex; // insertVod(sourceKey, vodInfo); firstReverse = true; seriesAdapter.notifyDataSetChanged(); diff --git a/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java b/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java index db9622ed..3807d478 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java @@ -770,8 +770,8 @@ public class PlayActivity extends BaseActivity { stopParse(); if(mVideoView!=null) mVideoView.release(); - String subtitleCacheKey = mVodInfo.sourceKey + "-" + mVodInfo.id + "-" + mVodInfo.playFlag + "-" + mVodInfo.playIndex + "-subt"; - String progressKey = mVodInfo.sourceKey + mVodInfo.id + mVodInfo.playFlag + mVodInfo.playIndex; + String subtitleCacheKey = mVodInfo.sourceKey + "-" + mVodInfo.id + "-" + mVodInfo.playFlag + "-" + mVodInfo.playIndex+ "-" + vs.name + "-subt"; + String progressKey = mVodInfo.sourceKey + mVodInfo.id + mVodInfo.playFlag + mVodInfo.playIndex + vs.name; //重新播放清除现有进度 if (reset) { CacheManager.delete(MD5.string2MD5(progressKey), 0); @@ -1216,6 +1216,9 @@ public class PlayActivity extends BaseActivity { boolean checkVideoFormat(String url) { if (sourceBean.getType() == 3) { + if (url.contains("=http") || url.contains(".html")) { + return false; + } Spider sp = ApiConfig.get().getCSP(sourceBean); if (sp != null && sp.manualVideoCheck()) return sp.isVideoFormat(url); diff --git a/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java b/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java index e2933b8c..d60a10fe 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java @@ -781,8 +781,8 @@ public class PlayFragment extends BaseLazyFragment { stopParse(); if(mVideoView!=null) mVideoView.release(); - String subtitleCacheKey = mVodInfo.sourceKey + "-" + mVodInfo.id + "-" + mVodInfo.playFlag + "-" + mVodInfo.playIndex + "-subt"; - String progressKey = mVodInfo.sourceKey + mVodInfo.id + mVodInfo.playFlag + mVodInfo.playIndex; + String subtitleCacheKey = mVodInfo.sourceKey + "-" + mVodInfo.id + "-" + mVodInfo.playFlag + "-" + mVodInfo.playIndex+ "-" + vs.name + "-subt"; + String progressKey = mVodInfo.sourceKey + mVodInfo.id + mVodInfo.playFlag + mVodInfo.playIndex + vs.name; //重新播放清除现有进度 if (reset) { CacheManager.delete(MD5.string2MD5(progressKey), 0); @@ -1227,9 +1227,13 @@ public class PlayFragment extends BaseLazyFragment { boolean checkVideoFormat(String url) { if (sourceBean.getType() == 3) { + if (url.contains("=http") || url.contains(".html")) { + return false; + } Spider sp = ApiConfig.get().getCSP(sourceBean); - if (sp != null && sp.manualVideoCheck()) + if (sp != null && sp.manualVideoCheck()){ return sp.isVideoFormat(url); + } } return DefaultConfig.isVideoFormat(url); } diff --git a/app/src/main/java/com/github/tvbox/osc/util/DefaultConfig.java b/app/src/main/java/com/github/tvbox/osc/util/DefaultConfig.java index cb449bfc..4e4f1724 100644 --- a/app/src/main/java/com/github/tvbox/osc/util/DefaultConfig.java +++ b/app/src/main/java/com/github/tvbox/osc/util/DefaultConfig.java @@ -110,7 +110,7 @@ public class DefaultConfig { // private static final Pattern snifferMatch = Pattern.compile("http((?!http).)*?default\\.365yg\\.com/.*|http((?!http).){26,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)\\?.*|http((?!http).){26,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)|http((?!http).){26,}?/m3u8\\?pt=m3u8.*|http((?!http).)*?default\\.ixigua\\.com/.*|http((?!http).)*?cdn-tos[^\\?]*|http((?!http).)*?/obj/tos[^\\?]*|http.*?/player/m3u8play\\.php\\?url=.*|http.*?/player/.*?[pP]lay\\.php\\?url=.*|http.*?/playlist/m3u8/\\?vid=.*|http.*?\\.php\\?type=m3u8&.*|http.*?/download.aspx\\?.*|http.*?/api/up_api.php\\?.*|https.*?\\.66yk\\.cn.*|http((?!http).)*?netease\\.com/file/.*"); private static final Pattern snifferMatch = Pattern.compile("http((?!http).)*?default\\.365yg\\.com/.*|http((?!http).){26,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)\\?.*|http((?!http).){26,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)|http((?!http).){26,}?/m3u8\\?pt=m3u8.*|http((?!http).)*?default\\.ixigua\\.com/.*|http((?!http).)*?/video/tos[^\\?]*|http((?!http).)*?dycdn-tos\\.pstatp[^\\?]*|http.*?/player/m3u8play\\.php\\?url=.*|http.*?/player/.*?[pP]lay\\.php\\?url=.*|http.*?/playlist/m3u8/\\?vid=.*|http.*?\\.php\\?type=m3u8&.*|http.*?/download.aspx\\?.*|http.*?/api/up_api.php\\?.*|https.*?\\.66yk\\.cn.*|http((?!http).)*?netease\\.com/file/.*"); public static boolean isVideoFormat(String url) { - if (url.contains("=http")) { + if (url.contains("=http") || url.contains(".html")) { return false; } if (snifferMatch.matcher(url).find()) {