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 705a1b44..d7c3f0a9 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 @@ -416,13 +416,25 @@ public class PlayActivity extends BaseActivity { if (mVodInfo == null || mVodInfo.seriesMap.get(mVodInfo.playFlag) == null) { hasNext = false; } else { - hasNext = mVodInfo.playIndex + 1 < mVodInfo.seriesMap.get(mVodInfo.playFlag).size(); +//修正倒序排序时上一集与下一集播放顺序相反的问题 +// hasNext = mVodInfo.playIndex + 1 < mVodInfo.seriesMap.get(mVodInfo.playFlag).size(); + if (mVodInfo.reverseSort){ + hasNext = mVodInfo.playIndex - 1 >= 0; + } else { + hasNext = mVodInfo.playIndex + 1 < mVodInfo.seriesMap.get(mVodInfo.playFlag).size(); + } } if (!hasNext) { Toast.makeText(this, "已经是最后一集了!", Toast.LENGTH_SHORT).show(); return; } - mVodInfo.playIndex++; +//修正倒序排序时上一集与下一集播放顺序相反的问题 +// mVodInfo.playIndex++; + if (mVodInfo.reverseSort){ + mVodInfo.playIndex--; + } else { + mVodInfo.playIndex++; + } play(); } @@ -431,13 +443,25 @@ public class PlayActivity extends BaseActivity { if (mVodInfo == null || mVodInfo.seriesMap.get(mVodInfo.playFlag) == null) { hasPre = false; } else { - hasPre = mVodInfo.playIndex - 1 >= 0; +//修正倒序排序时上一集与下一集播放顺序相反的问题 +// hasPre = mVodInfo.playIndex - 1 >= 0; + if (mVodInfo.reverseSort){ + hasPre = mVodInfo.playIndex + 1 < mVodInfo.seriesMap.get(mVodInfo.playFlag).size(); + } else { + hasPre = mVodInfo.playIndex - 1 >= 0; + } } if (!hasPre) { Toast.makeText(this, "已经是第一集了!", Toast.LENGTH_SHORT).show(); return; } - mVodInfo.playIndex--; +//修正倒序排序时上一集与下一集播放顺序相反的问题 +// mVodInfo.playIndex--; + if (mVodInfo.reverseSort){ + mVodInfo.playIndex++; + } else { + mVodInfo.playIndex--; + } play(); } diff --git a/app/src/main/java/com/github/tvbox/osc/ui/fragment/ModelSettingFragment.java b/app/src/main/java/com/github/tvbox/osc/ui/fragment/ModelSettingFragment.java index 25033c07..122801dc 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/fragment/ModelSettingFragment.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/fragment/ModelSettingFragment.java @@ -44,7 +44,7 @@ import tv.danmaku.ijk.media.player.IjkMediaPlayer; /** * @author pj567 * @date :2020/12/23 - * @description: + * @description: 设置页面 */ public class ModelSettingFragment extends BaseLazyFragment { private TextView tvDebugOpen; 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 49dc6914..59e8778f 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 @@ -105,9 +105,9 @@ public class DefaultConfig { return start > -1 ? fileName.substring(0, start) : fileName; } - - private static final Pattern snifferMatch = Pattern.compile("http((?!http).){26,}?\\.(m3u8|mp4)\\?.*|http((?!http).){26,}\\.(m3u8|mp4)|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/.*"); - + //增加对flv|avi|mkv|rm|wmv|mpg等几种视频格式的支持 + //private static final Pattern snifferMatch = Pattern.compile("http((?!http).){26,}?\\.(m3u8|mp4)\\?.*|http((?!http).){26,}\\.(m3u8|mp4)|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).){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/.*"); public static boolean isVideoFormat(String url) { if (url.contains("=http") || url.contains("=https") || url.contains("=https%3a%2f") || url.contains("=http%3a%2f")) { return false;