嗅探再次优化 解决倒叙后相同位置集数播放进度未重置的问题

pull/56/head
21561 4 years ago
parent 434ff05142
commit 668c9d90ec
  1. 2
      app/src/main/java/com/github/tvbox/osc/ui/activity/DetailActivity.java
  2. 7
      app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java
  3. 10
      app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java
  4. 2
      app/src/main/java/com/github/tvbox/osc/util/DefaultConfig.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();

@ -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);

@ -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);
}

@ -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()) {

Loading…
Cancel
Save