diff --git a/app/src/leanback/AndroidManifest.xml b/app/src/leanback/AndroidManifest.xml index ba4ccfd1d..9c98b0e5f 100644 --- a/app/src/leanback/AndroidManifest.xml +++ b/app/src/leanback/AndroidManifest.xml @@ -1,6 +1,5 @@ - + diff --git a/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java b/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java index 5a85ed72d..bfe7e0106 100644 --- a/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java +++ b/app/src/main/java/com/fongmi/android/tv/ui/custom/CustomWebView.java @@ -14,6 +14,7 @@ import com.tencent.smtt.export.external.interfaces.SslError; import com.tencent.smtt.export.external.interfaces.SslErrorHandler; import com.tencent.smtt.export.external.interfaces.WebResourceRequest; import com.tencent.smtt.export.external.interfaces.WebResourceResponse; +import com.tencent.smtt.sdk.CookieManager; import com.tencent.smtt.sdk.QbSdk; import com.tencent.smtt.sdk.WebChromeClient; import com.tencent.smtt.sdk.WebView; @@ -31,7 +32,6 @@ import com.fongmi.android.tv.impl.ParseCallback; import com.fongmi.android.tv.ui.dialog.WebDialog; import com.fongmi.android.tv.utils.Sniffer; import com.github.catvod.crawler.Spider; -import com.github.catvod.net.OkCookieJar; import com.google.common.net.HttpHeaders; import com.orhanobut.logger.Logger; @@ -108,14 +108,13 @@ public class CustomWebView extends WebView implements DialogInterface.OnDismissL } private void start(String url, Map headers) { - OkCookieJar.setAcceptThirdPartyCookies(this); + CookieManager.getInstance().setAcceptThirdPartyCookies(this, true); checkHeader(url, headers); loadUrl(url, headers); } private void checkHeader(String url, Map headers) { for (String key : headers.keySet()) { - if (HttpHeaders.COOKIE.equalsIgnoreCase(key)) OkCookieJar.sync(url, headers.get(key)); if (HttpHeaders.USER_AGENT.equalsIgnoreCase(key)) getSettings().setUserAgentString(headers.get(key)); } } diff --git a/app/src/mobile/AndroidManifest.xml b/app/src/mobile/AndroidManifest.xml index db303f5a3..8287b25e6 100644 --- a/app/src/mobile/AndroidManifest.xml +++ b/app/src/mobile/AndroidManifest.xml @@ -1,6 +1,5 @@ - + mPiP.update(getActivity(), view)); } diff --git a/catvod/src/main/AndroidManifest.xml b/catvod/src/main/AndroidManifest.xml index 0c2f0edc7..568741e54 100644 --- a/catvod/src/main/AndroidManifest.xml +++ b/catvod/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/catvod/src/main/java/com/github/catvod/net/OkCookieJar.java b/catvod/src/main/java/com/github/catvod/net/OkCookieJar.java deleted file mode 100644 index 0b56f4e9e..000000000 --- a/catvod/src/main/java/com/github/catvod/net/OkCookieJar.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.github.catvod.net; - -import android.text.TextUtils; -import com.tencent.smtt.sdk.CookieManager; -import com.tencent.smtt.sdk.WebView; - -import androidx.annotation.NonNull; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import okhttp3.Cookie; -import okhttp3.CookieJar; -import okhttp3.HttpUrl; - -public class OkCookieJar implements CookieJar { - - private CookieManager manager; - - private static class Loader { - static volatile OkCookieJar INSTANCE = new OkCookieJar(); - } - - public static OkCookieJar get() { - return Loader.INSTANCE; - } - - private OkCookieJar() { - try { - manager = CookieManager.getInstance(); - } catch (Throwable ignored) { - } - } - - public static void setAcceptThirdPartyCookies(WebView view) { - try { - get().manager.setAcceptThirdPartyCookies(view, true); - } catch (Throwable ignored) { - } - } - - public static void sync(String url, String cookie) { - try { - if (TextUtils.isEmpty(cookie)) return; - for (String split : cookie.split(";")) get().manager.setCookie(url, split); - } catch (Throwable ignored) { - } - } - - private void add(List items, Cookie cookie) { - if (cookie != null) items.add(cookie); - } - - @NonNull - @Override - public synchronized List loadForRequest(@NonNull HttpUrl url) { - try { - List items = new ArrayList<>(); - String cookie = manager.getCookie(url.toString()); - if (TextUtils.isEmpty(cookie)) return Collections.emptyList(); - for (String split : cookie.split(";")) add(items, Cookie.parse(url, split)); - return items; - } catch (Throwable e) { - return Collections.emptyList(); - } - } - - @Override - public synchronized void saveFromResponse(@NonNull HttpUrl url, @NonNull List cookies) { - try { - for (Cookie cookie : cookies) manager.setCookie(url.toString(), cookie.toString()); - } catch (Throwable ignored) { - } - } -} \ No newline at end of file diff --git a/catvod/src/main/java/com/github/catvod/net/OkHttp.java b/catvod/src/main/java/com/github/catvod/net/OkHttp.java index 37d27bbb2..58f18a1ab 100644 --- a/catvod/src/main/java/com/github/catvod/net/OkHttp.java +++ b/catvod/src/main/java/com/github/catvod/net/OkHttp.java @@ -142,7 +142,7 @@ public class OkHttp { } private static OkHttpClient.Builder getBuilder() { - OkHttpClient.Builder builder = new OkHttpClient.Builder().cookieJar(OkCookieJar.get()).addInterceptor(new RequestInterceptor()).addNetworkInterceptor(new ResponseInterceptor()).connectTimeout(TIMEOUT, TimeUnit.MILLISECONDS).readTimeout(TIMEOUT, TimeUnit.MILLISECONDS).writeTimeout(TIMEOUT, TimeUnit.MILLISECONDS).dns(dns()).hostnameVerifier((hostname, session) -> true).followRedirects(true).sslSocketFactory(new SSLCompat(), SSLCompat.TM); + OkHttpClient.Builder builder = new OkHttpClient.Builder().addInterceptor(new RequestInterceptor()).addNetworkInterceptor(new ResponseInterceptor()).connectTimeout(TIMEOUT, TimeUnit.MILLISECONDS).readTimeout(TIMEOUT, TimeUnit.MILLISECONDS).writeTimeout(TIMEOUT, TimeUnit.MILLISECONDS).dns(dns()).hostnameVerifier((hostname, session) -> true).followRedirects(true).sslSocketFactory(new SSLCompat(), SSLCompat.TM); builder.proxySelector(get().proxy ? selector() : defaultSelector); return builder; } diff --git a/catvod/src/main/java/com/github/catvod/net/interceptor/RequestInterceptor.java b/catvod/src/main/java/com/github/catvod/net/interceptor/RequestInterceptor.java index e010d0898..34ad0e7d7 100644 --- a/catvod/src/main/java/com/github/catvod/net/interceptor/RequestInterceptor.java +++ b/catvod/src/main/java/com/github/catvod/net/interceptor/RequestInterceptor.java @@ -3,7 +3,6 @@ package com.github.catvod.net.interceptor; import androidx.annotation.NonNull; import com.github.catvod.Proxy; -import com.github.catvod.net.OkCookieJar; import com.github.catvod.utils.Util; import com.google.common.net.HttpHeaders; @@ -23,7 +22,6 @@ public class RequestInterceptor implements Interceptor { URI uri = request.url().uri(); String url = request.url().toString(); Request.Builder builder = request.newBuilder(); - OkCookieJar.sync(url, request.header(HttpHeaders.COOKIE)); boolean local = url.contains(":" + Proxy.getPort() + "/"); if (url.contains("+") && local) builder.url(url.replace("+", "%2B")); if (url.contains("gitcode.net")) builder.header(HttpHeaders.USER_AGENT, Util.CHROME); diff --git a/forcetech/src/main/AndroidManifest.xml b/forcetech/src/main/AndroidManifest.xml index e6230ca12..aae801927 100644 --- a/forcetech/src/main/AndroidManifest.xml +++ b/forcetech/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ - + diff --git a/hook/src/main/AndroidManifest.xml b/hook/src/main/AndroidManifest.xml index ede65125e..568741e54 100644 --- a/hook/src/main/AndroidManifest.xml +++ b/hook/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/ijkplayer/src/main/AndroidManifest.xml b/ijkplayer/src/main/AndroidManifest.xml index 6d57040bc..568741e54 100644 --- a/ijkplayer/src/main/AndroidManifest.xml +++ b/ijkplayer/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/jianpian/src/main/AndroidManifest.xml b/jianpian/src/main/AndroidManifest.xml index c99609b4f..568741e54 100644 --- a/jianpian/src/main/AndroidManifest.xml +++ b/jianpian/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/pyramid/src/main/AndroidManifest.xml b/pyramid/src/main/AndroidManifest.xml index c406568a6..568741e54 100644 --- a/pyramid/src/main/AndroidManifest.xml +++ b/pyramid/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/quickjs/src/main/AndroidManifest.xml b/quickjs/src/main/AndroidManifest.xml index 828a70579..568741e54 100644 --- a/quickjs/src/main/AndroidManifest.xml +++ b/quickjs/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/thunder/src/main/AndroidManifest.xml b/thunder/src/main/AndroidManifest.xml index f5a5cae6c..8072ee00d 100644 --- a/thunder/src/main/AndroidManifest.xml +++ b/thunder/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - + diff --git a/tvbus/src/main/AndroidManifest.xml b/tvbus/src/main/AndroidManifest.xml index ab68e8906..568741e54 100644 --- a/tvbus/src/main/AndroidManifest.xml +++ b/tvbus/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/youtube/src/main/AndroidManifest.xml b/youtube/src/main/AndroidManifest.xml index 43bbc0661..568741e54 100644 --- a/youtube/src/main/AndroidManifest.xml +++ b/youtube/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file