我希望您能告诉我如何防止Android WebView保存HTML表单中的“密码数据”的提示框?您能帮我解决这个问题吗?
尝试以下方法:
使用.getSettings()
获取WebView设置,并调用该方法:setSavePassword(false)
public void setSavePassword (boolean save)
http://developer.android.com/reference/android/webkit/WebSettings.html#setSaveFormData(boolean)
对于使用API Level 18的用户,请参阅下面Kirk Hammet的答案。
@Nikola Despotoski的回答在他发布答案时是正确的,但自API 18以后,该方法已过时,根据文档:
今后不再支持在WebView中保存密码
这意味着在Android 4.4及以上版本中,默认情况下将为“false”,而且这个方法将不再存在。
如果您想确保与所有不同的API级别兼容,您应该编写:
if (Build.VERSION.SDK_INT <= 18) {
mWebView.getSettings().setSavePassword(false);
} else {
// do nothing. because as google mentioned in the documentation -
// "Saving passwords in WebView will not be supported in future versions"
}
WebView webView = (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setSavePassword(false);
它并不像你想的那样过时,我不得不移除版本检查,因为在华为5.01设备上我会收到提示,并且也禁用了FormData...
webview.getSettings().setSavePassword(false);
webview.getSettings().setSaveFormData(false);
我拥有以上所有条件,并在运行高于18的华为Ascend P7上使用了该应用程序。但出现一个确认框,询问“您是否希望浏览器记住此密码?”
这个弹窗出现的原因可能是什么?我已经尝试了下面的代码。
_viewSettings.setSavePassword(false);
if (Build.VERSION.SDK_INT <= 18) {
_viewSettings.setSavePassword(false);
}
_view.loadUrl(url);