我在Android webview应用程序中遇到了一个死循环,该应用程序在onReceivedHttpAuthRequest函数上被阻止.
mWeb.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
mProgressBar.setVisibility(View.GONE);
}
@Override
public void onReceivedHttpAuthRequest(WebView view,HttpAuthHandler handler, String host, String realm) {
if (isAdded())
handler.proceed(getResources().getString(R.string.username), getResources().getString(R.string.pass));
}
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
});
mWeb.loadUrl(mUrl);
Run Code Online (Sandbox Code Playgroud)
小智 0
关于活动
\n\n\n\n mWebView.LoadUrl(url);\n await Task.Delay(10000); \n if (!mWebView.IsShown | cliente.ErroReportado)\n {\n Toast t = Toast.MakeText(Android.App.Application.Context, "Erro ao acessar o servidor, verifique conex\xc3\xa3o, usu\xc3\xa1rio e senha e tente novamente!", ToastLength.Long);\n t.SetGravity(GravityFlags.Center, 0, 0);\n t.Show();\n OnCreate(null);\n }\n }\n\nRun Code Online (Sandbox Code Playgroud)\n\n在 WebViewClient 上
\n\n\n\n class ViewClient : WebViewClient \n {\n MainActivity _activity;\n\n public int iTentativasLogin { get; private set; }\n public bool ErroReportado { get; private set; }\n\n\n public ViewClient(MainActivity activity)\n {\n _activity = activity;\n }\n\n\n public override void OnReceivedHttpAuthRequest(WebView view, HttpAuthHandler handler, string host, string realm)\n {\n Toast t ;\n if (Usuario.Length == 0 | Senha.Length == 0)\n {\n t = Toast.MakeText(Android.App.Application.Context, "Usu\xc3\xa1rio ou senha n\xc3\xa3o preenchidos", ToastLength.Long);\n t.SetGravity(GravityFlags.Center, 0, 0);\n t.Show();\n handler.Cancel();\n ErroReportado = true;\n }\n else\n {\n iTentativasLogin++; \n\n if (iTentativasLogin < 4)\n {\n handler.Proceed(Usuario, Senha);\n }\n else\n {\n t = Toast.MakeText(Android.App.Application.Context, "Usu\xc3\xa1rio ou senha incorretos", ToastLength.Long);\n t.SetGravity(GravityFlags.Center, 0, 0);\n t.Show();\n handler.Cancel();\n ErroReportado = true;\n }\n\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
236 次 |
| 最近记录: |