web-dev-qa-db-ja.com

Android WebViewで「パスワードの保存」ダイアログを無効にする方法は?

Android WebViewフォームがhtmlフォームから「password-data」を保存するように要求するのを防ぐ方法を知りたいですか?

これについて私を助けてくれませんか。

26
aichingm

これを試して:

.getSettings()を使用してWebビュー設定を取得し、このメソッドをsetSavePassword(false)に設定します

public void setSavePassword (boolean save)

http://developer.Android.com/reference/Android/webkit/WebSettings.html#setSaveFormData(boolean)

APIレベル18を使用している場合は、以下のカークハメットの回答を参照してください。

40

@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"
    }
24
Tal Kanel

入力する必要があるのでそれを見る必要がある私のような人のためのコードスニペットはここにあります

    WebView webView = (WebView) findViewById(R.id.webView);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setSavePassword(false);
2
timv

あなたが思うほど減価償却されていないので、Huawei 5.01デバイスでプロンプトを取得していたのでバージョンチェックを削除し、FormDataも無効にする必要がありました...

    webview.getSettings().setSavePassword(false);
    webview.getSettings().setSaveFormData(false);
0
Kenny

WebViewにある場合は、フォームにautocomplete = "off"属性を追加するだけですか?

0
An0nC0d3r

私は上記のすべてを持っており、18より高く実行されているHuawei Ascend P7でアプリを使用しました。しかし、何らかの理由で、「ブラウザーにこのパスワードを記憶させますか?」という確認ボックスが表示されます。

このポップアップの理由は何でしょうか。以下のコードを試してみました。

_viewSettings.setSavePassword(false);  
if (Build.VERSION.SDK_INT <= 18) {  
    _viewSettings.setSavePassword(false);  
}  
_view.loadUrl(url);

注:上記では、Samsungデバイスでの保存メッセージは表示されません。

0
Hitin