use*_*714 2 android recaptcha android-webview
我有一个 Android 应用程序,该应用程序将用户重定向到包含 reCAPTCHA 问题的网页。以前,我只是通过打开浏览器窗口并将用户引导到那里来实现这一点。最近,为了更好的用户体验,我将其更改为使用 webview,但问题是现在由于某种原因 reCAPTCHA 问题没有在页面上呈现;其他一切功能正常。为什么会这样,我该如何解决?我认为这一定与从 webview (www.google.com) 访问不同的域有关,但不确定如何以不同的方式配置它不是问题。这是我设置 Webview 的方式。请注意,覆盖的方法用于处理此 Web 视图中可能发生的某些 OAuth 授权过程。即使我将其注释掉,我也有同样的问题。
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl(this.url);
myWebView.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView webView, String url){
Uri uri = Uri.parse(url);
if (url != null && uri.getScheme().equals(NNApplication.CALLBACK_SCHEME)) {
SharedPreferences shPref = getSharedPreferences("NN_PREFS", Activity.MODE_PRIVATE);
new OAuthAccessTokenTask(Authorization.this, consumer, provider, shPref).execute(uri);
webView.setVisibility(View.GONE);
finish();
return true;
}else{
return false;
}
}
@Override
public void onReceivedSslError (WebView view, SslErrorHandler handler, SslError error) {
handler.proceed() ;
}
});
Run Code Online (Sandbox Code Playgroud)
同样,您可以在下面的 URL 中查看 reCAPTCHA 问题。我已经检查过了,我们的开发站点和我们的实时站点之间的行为是一样的:
验证码需要 javascript:
myWebView.getSettings().setJavaScriptEnabled(true);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4708 次 |
| 最近记录: |