diff --git a/app/src/main/java/com/github/catvod/api/SimpleCookieJar.java b/app/src/main/java/com/github/catvod/api/SimpleCookieJar.java index 01a25758..8552fc51 100644 --- a/app/src/main/java/com/github/catvod/api/SimpleCookieJar.java +++ b/app/src/main/java/com/github/catvod/api/SimpleCookieJar.java @@ -12,6 +12,7 @@ import com.google.gson.JsonObject; import okhttp3.Cookie; import okhttp3.CookieJar; import okhttp3.HttpUrl; +import org.apache.commons.lang3.StringUtils; import org.jetbrains.annotations.NotNull; import java.io.File; @@ -34,6 +35,11 @@ public class SimpleCookieJar implements CookieJar { public SimpleCookieJar() { this.cache = Cache.objectFrom(Path.read(getCache())); + String cookieStr = cache.getUser().getCookie(); + if (StringUtils.isNoneBlank(cookieStr)) { + JsonObject cookieJson = Json.safeObject(cookieStr); + setGlobalCookie(cookieJson); + } } @@ -45,14 +51,14 @@ public class SimpleCookieJar implements CookieJar { public void saveFromResponse(HttpUrl url, @NotNull List cookies) { SpiderDebug.log("SimpleCookieJar saveFromResponse: " + url.host() + ": " + Json.toJson(cookies)); // 创建可修改的 Cookie 列表副本 - List oldCookies = cookieStore.get(url.host())!=null?cookieStore.get(url.host()):new ArrayList<>(); + List oldCookies = cookieStore.get(url.host()) != null ? cookieStore.get(url.host()) : new ArrayList<>(); List newCookies = new ArrayList<>(oldCookies); // 更新 Cookie for (Cookie newCookie : cookies) { // 移除同名的旧 Cookie for (Cookie oldCookie : newCookies) { - if(oldCookie.name().equals(newCookie.name())){ + if (oldCookie.name().equals(newCookie.name())) { oldCookies.remove(oldCookie); } } @@ -100,7 +106,7 @@ public class SimpleCookieJar implements CookieJar { boolean hostOnly = cookieobj.get("hostOnly").getAsBoolean(); if (hostOnly) { cookieBuilder.hostOnlyDomain(cookieobj.get("domain").getAsString()); - }else { + } else { cookieBuilder.domain(cookieobj.get("domain").getAsString()); } diff --git a/app/src/main/java/com/github/catvod/api/TianYiHandler.java b/app/src/main/java/com/github/catvod/api/TianYiHandler.java index df74916f..36fb302b 100644 --- a/app/src/main/java/com/github/catvod/api/TianYiHandler.java +++ b/app/src/main/java/com/github/catvod/api/TianYiHandler.java @@ -35,7 +35,6 @@ public class TianYiHandler { private ScheduledExecutorService service; private AlertDialog dialog; private final Cache cache; - private final Cache ecache; public File getCache() { return Path.tv("tianyi"); @@ -56,8 +55,6 @@ public class TianYiHandler { cache = Cache.objectFrom(Path.read(getCache())); - ecache = Cache.objectFrom(Path.read(geteCache())); - cookieJar = new SimpleCookieJar(); } diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index b40de0c1..b15023a3 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 d13de221..2922038f 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -fabff6d0293436b616892579a9d1e3e3 +1d71c8fceb2eb53953b31019774eeb86 diff --git a/json/index.json b/json/index.json index 0ff3f01e..235ee858 100644 --- a/json/index.json +++ b/json/index.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.kkgithub.com/lushunming/AndroidCatVodSpider/tyCookieJar/jar/custom_spider.jar;md5;fabff6d0293436b616892579a9d1e3e3", + "spider": "https://raw.kkgithub.com/lushunming/AndroidCatVodSpider/tyCookieJar/jar/custom_spider.jar;md5;1d71c8fceb2eb53953b31019774eeb86", "lives": [ { "name": "电视直播",