我需要获取存储在webview中的所有cookie。目前使用的是默认的webview。
https://developer.android.com/reference/android/webkit/CookieManager.html
目前仅支持以下功能:
- getCookie(String url)
我需要能够在不知道确切域名的情况下获取所有cookie的能力。
感谢任何建议,谢谢, D
我需要获取存储在webview中的所有cookie。目前使用的是默认的webview。
https://developer.android.com/reference/android/webkit/CookieManager.html
目前仅支持以下功能:
我需要能够在不知道确切域名的情况下获取所有cookie的能力。
感谢任何建议,谢谢, D
String cookies = CookieManager.getInstance().getCookie(webView.getUrl());
WebView webView = findViewById(R.id.webview_id);
WebViewClient webViewClient = new WebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
String cookies = CookieManager.getInstance().getCookie(view.getUrl());
// save cookies or call new fun to handle actions
// newCookies(cookies);
}
};
webView.setWebViewClient(webViewClient);
//webView.loadUrl(/*what ever url you want to load */);
val cookieManager = java.net.CookieManager()
webView.webViewClient = object : WebViewClient() {
override fun onPageFinished(view: WebView?, url: String?) {
CookieManager.getInstance()
.getCookie(url)
?.let {
val uri = URI(url)
HttpCookie.parse(it).forEach {
cookieManager.cookieStore.add(uri, it)
}
}
}
}
CookieStore.getCookies()
API,那么它的目的是什么?我真的不理解这个Android设计选择... - toioskishouldInterceptRequest()
回调来拦截所有 HTTP 请求并在处理请求时提取 cookies。我尝试编写了一个可行的示例,但由于 WebResourceRequest
和 WebResourceResponse
接口比较奇怪,需要一些调整才能与 HttpUrlConnection
或甚至 OkHttpClient
互操作,所以我失败了。希望你能运用这个想法更加成功。 ;) - SpaceBison