のWebViewでの要求をインターセプトするための私の現在のコードは、私が The best way to intercept a WebView request in Androidからこのコードを持ってAndroidのインターセプトは、WebViewの要求が正しく
@Override
public WebResourceResponse shouldInterceptRequest(WebView view,
String url) {
String ext = MimeTypeMap.getFileExtensionFromUrl(url);
String mime = MimeTypeMap.getSingleton().getMimeTypeFromExtension(ext);
if (mime == null) {
return super.shouldInterceptRequest(view, url);
} else {
HttpURLConnection conn = (HttpURLConnection) new URL(
url).openConnection();
conn.setRequestProperty("User-Agent", userAgent);
return new WebResourceResponse(mime, "UTF-8",
conn.getInputStream());
}
}
です。
ただし、認証を実行しようとするたびに、私は自分のwebviewでFacebookを読み込んでいます。
mWebView.loadUrl("https://www.facebook.com/");
何も起こっていない、私が気づいたことは、要求ヘッダーが不完全であり、応答でもあります。また、ソースにクッキーはありません。 (私はChrome経由でWebビューをリモートでデバッグしたときにこれを見ました)。
私が間違っている場合は私を修正してください。しかし、不完全なヘッダーやCookieがないとログイン要求が失敗する原因になると思います。
リクエストを変更してヘッダーを設定する方法はありますか?またレスポンスのために、私もそれを行う必要がありますか?最後に、どのようにしてクッキーを持てますか?