Как отключить диалог "сохранить пароль" на Android WebView?
Я хотел бы знать, как предотвратить форму Android WebView с просьбой сохранить "пароль-данные" из html-формы?
можете ли вы помочь мне в этом?
6 ответов
попробуйте это:
получить настройки webview с .getSettings()
и установите этот метод setSavePassword(false)
public void setSavePassword (boolean save)
http://developer.android.com/reference/android/webkit/WebSettings.html#setSaveFormData(boolean)
для тех, кто использует уровень API 18, см. ответ Кирка Хаммета ниже.
@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);
У меня есть все вышеперечисленное и использовал приложение на моем Huawei Ascend P7, который работает выше 18. Но по какой-то причине я все еще вижу окно подтверждения, говорящее: "вы хотите, чтобы браузер запомнил этот пароль?"
каковы могут быть причины этого всплывающего окна. Я пробовал приведенный ниже код.
_viewSettings.setSavePassword(false);
if (Build.VERSION.SDK_INT <= 18) {
_viewSettings.setSavePassword(false);
}
_view.loadUrl(url);
Примечание: выше не показывает никаких сообщений о сохранении на устройствах Samsung.
его не так обесценился, как вы могли бы подумать, мне пришлось удалить проверку версии, поскольку я получал приглашение на устройстве Huawei 5.01 и отключил FormData...
webview.getSettings().setSavePassword(false);
webview.getSettings().setSaveFormData(false);