diff --git a/app/src/main/java/com/github/catvod/bean/market/Data.java b/app/src/main/java/com/github/catvod/bean/market/Data.java new file mode 100644 index 00000000..18684fba --- /dev/null +++ b/app/src/main/java/com/github/catvod/bean/market/Data.java @@ -0,0 +1,45 @@ +package com.github.catvod.bean.market; + +import android.text.TextUtils; + +import com.github.catvod.bean.Class; +import com.github.catvod.bean.Vod; +import com.google.gson.Gson; +import com.google.gson.annotations.SerializedName; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +public class Data { + + @SerializedName("name") + private String name; + @SerializedName("list") + private List list; + + public static List arrayFrom(String str) { + Type listType = new TypeToken>() {}.getType(); + return new Gson().fromJson(str, listType); + } + + public String getName() { + return TextUtils.isEmpty(name) ? "" : name; + } + + public List getList() { + return list == null ? Collections.emptyList() : list; + } + + public List getVod() { + List list = new ArrayList<>(); + for (Item item : getList()) list.add(item.vod()); + return list; + } + + public Class type() { + return new Class(getName(), getName()); + } +} diff --git a/app/src/main/java/com/github/catvod/bean/market/Item.java b/app/src/main/java/com/github/catvod/bean/market/Item.java index 11e392a6..9f92c5d7 100644 --- a/app/src/main/java/com/github/catvod/bean/market/Item.java +++ b/app/src/main/java/com/github/catvod/bean/market/Item.java @@ -3,13 +3,7 @@ package com.github.catvod.bean.market; import android.text.TextUtils; import com.github.catvod.bean.Vod; -import com.google.gson.Gson; import com.google.gson.annotations.SerializedName; -import com.google.gson.reflect.TypeToken; - -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.List; public class Item { @@ -19,11 +13,8 @@ public class Item { private String url; @SerializedName("icon") private String icon; - - public static List arrayFrom(String str) { - Type listType = new TypeToken>() {}.getType(); - return new Gson().fromJson(str, listType); - } + @SerializedName("version") + private String version; public String getName() { return TextUtils.isEmpty(name) ? "" : name; @@ -37,7 +28,11 @@ public class Item { return TextUtils.isEmpty(icon) ? "" : icon; } + public String getVersion() { + return TextUtils.isEmpty(version) ? "" : version; + } + public Vod vod() { - return new Vod(getUrl(), getName(), getIcon()); + return new Vod(getUrl(), getName(), getIcon(), getVersion(), Vod.Style.rect(1.0f)); } } diff --git a/app/src/main/java/com/github/catvod/spider/Market.java b/app/src/main/java/com/github/catvod/spider/Market.java index 14d98d6d..4cdbf767 100644 --- a/app/src/main/java/com/github/catvod/spider/Market.java +++ b/app/src/main/java/com/github/catvod/spider/Market.java @@ -5,9 +5,10 @@ import android.app.ProgressDialog; import android.content.Context; import android.net.Uri; +import com.github.catvod.bean.Class; import com.github.catvod.bean.Result; import com.github.catvod.bean.Vod; -import com.github.catvod.bean.market.Item; +import com.github.catvod.bean.market.Data; import com.github.catvod.crawler.Spider; import com.github.catvod.net.OkHttp; import com.github.catvod.utils.FileUtil; @@ -18,6 +19,7 @@ import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import okhttp3.Response; @@ -25,7 +27,7 @@ import okhttp3.Response; public class Market extends Spider { private ProgressDialog dialog; - private List items; + private List datas; private boolean busy; public boolean isBusy() { @@ -38,14 +40,20 @@ public class Market extends Spider { @Override public void init(Context context, String extend) throws Exception { - items = Item.arrayFrom(extend); + datas = Data.arrayFrom(extend); } @Override - public String homeVideoContent() { - List list = new ArrayList<>(); - for (Item item : items) list.add(item.vod()); - return Result.string(list); + public String homeContent(boolean filter) throws Exception { + List classes = new ArrayList<>(); + if (datas.size() > 1) for (int i = 1; i < datas.size(); i++) classes.add(datas.get(i).type()); + return Result.string(classes, datas.get(0).getVod()); + } + + @Override + public String categoryContent(String tid, String pg, boolean filter, HashMap extend) throws Exception { + for (Data data : datas) if (data.getName().equals(tid)) return Result.string(data.getVod()); + return super.categoryContent(tid, pg, filter, extend); } @Override diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index a4c54701..c73c2399 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 9234582d..01d49be8 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -e7ecd94c00583729f5ee1a87370573ef +75e53be144f567045cf1de67327d5478 diff --git a/json/adult.json b/json/adult.json index c49f7a3e..670a7d2a 100644 --- a/json/adult.json +++ b/json/adult.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;e7ecd94c00583729f5ee1a87370573ef", + "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;75e53be144f567045cf1de67327d5478", "wallpaper": "https://gao.chuqiuyu.tk", "sites": [ { diff --git a/json/config.json b/json/config.json index a30b3024..8d64b5d5 100644 --- a/json/config.json +++ b/json/config.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;e7ecd94c00583729f5ee1a87370573ef", + "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;75e53be144f567045cf1de67327d5478", "wallpaper": "http://饭太硬.top/深色壁纸/api.php", "sites": [ { @@ -287,49 +287,127 @@ }, "ext": [ { - "name": "電視-java-v7", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-java-armeabi_v7a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png" + "name": "推薦", + "list": [ + { + "name": "電視-java-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-java-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "電視-java-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-java-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "電視-py-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-python-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "電視-py-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-python-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "Android-4.x", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/kitkat/leanback.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "手機-java-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-java-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + }, + { + "name": "手機-java-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-java-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + }, + { + "name": "手機-py-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-python-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + }, + { + "name": "手機-py-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-python-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + } + ] }, { - "name": "電視-java-v8", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-java-arm64_v8a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png" + "name": "電視版", + "list": [ + { + "name": "電視-java-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-java-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "電視-java-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-java-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "電視-py-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-python-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "電視-py-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-python-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + }, + { + "name": "Android-4.x", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/kitkat/leanback.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png", + "version": "2.0.7" + } + ] }, { - "name": "電視-py-v7", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-python-armeabi_v7a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png" - }, - { - "name": "電視-py-v8", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/leanback-python-arm64_v8a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png" - }, - { - "name": "Android-4.x", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/kitkat/leanback.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8nk2.png" - }, - { - "name": "手機-java-v7", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-java-armeabi_v7a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png" - }, - { - "name": "手機-java-v8", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-java-arm64_v8a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png" - }, - { - "name": "手機-py-v7", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-python-armeabi_v7a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png" - }, - { - "name": "手機-py-v8", - "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-python-arm64_v8a.apk", - "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png" + "name": "手機版", + "list": [ + { + "name": "手機-java-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-java-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + }, + { + "name": "手機-java-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-java-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + }, + { + "name": "手機-py-v7", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-python-armeabi_v7a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + }, + { + "name": "手機-py-v8", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FongMi/Release/main/apk/release/mobile-python-arm64_v8a.apk", + "icon": "https://i.imgs.ovh/2023/10/17/r8lVK.png", + "version": "2.0.7" + } + ] } ] }