diff --git a/app/src/main/java/com/github/catvod/ali/API.java b/app/src/main/java/com/github/catvod/ali/API.java index 3c9b6ad..e24c789 100644 --- a/app/src/main/java/com/github/catvod/ali/API.java +++ b/app/src/main/java/com/github/catvod/ali/API.java @@ -17,6 +17,7 @@ import com.github.catvod.bean.ali.Code; import com.github.catvod.bean.ali.Data; import com.github.catvod.bean.ali.Item; import com.github.catvod.bean.ali.OAuth; +import com.github.catvod.bean.ali.Sorter; import com.github.catvod.bean.ali.User; import com.github.catvod.crawler.SpiderDebug; import com.github.catvod.net.OkHttp; @@ -253,16 +254,8 @@ public class API { List playFrom = Arrays.asList("原畫", "超清", "高清"); List episode = new ArrayList<>(); List playUrl = new ArrayList<>(); + Sorter.sort(files); for (Item file : files) episode.add(file.getDisplayName() + "$" + file.getFileId() + findSubs(file.getName(), subMap)); - Collections.sort(episode, (o1, o2) -> { - try { - Integer a = Integer.valueOf(o1.split("\\.")[0]); - Integer b = Integer.valueOf(o2.split("\\.")[0]); - return a.compareTo(b); - } catch (NumberFormatException e) { - return 1; - } - }); for (int i = 0; i < playFrom.size(); i++) playUrl.add(TextUtils.join("#", episode)); Vod vod = new Vod(); vod.setVodId(url); diff --git a/app/src/main/java/com/github/catvod/bean/ali/Sorter.java b/app/src/main/java/com/github/catvod/bean/ali/Sorter.java new file mode 100644 index 0000000..76bd790 --- /dev/null +++ b/app/src/main/java/com/github/catvod/bean/ali/Sorter.java @@ -0,0 +1,21 @@ +package com.github.catvod.bean.ali; + +import java.util.Collections; +import java.util.Comparator; +import java.util.List; + +public class Sorter implements Comparator { + + public static void sort(List items) { + Collections.sort(items, new Sorter()); + } + + @Override + public int compare(Item o1, Item o2) { + try { + return Integer.valueOf(o1.getDisplayName()).compareTo(Integer.valueOf(o2.getDisplayName())); + } catch (NumberFormatException e) { + return o1.getDisplayName().compareToIgnoreCase(o2.getDisplayName()); + } + } +} diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index cd96474..331c2ca 100644 Binary files a/jar/custom_spider.jar and b/jar/custom_spider.jar differ diff --git a/jar/custom_spider.jar.md5 b/jar/custom_spider.jar.md5 index 4fa7e28..372ea90 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -c08916c262b65e7a7caff865d900f3b7 +dc64f1fe003adcd9916ee38638684376