我有一個簡單的網頁,有一個用戶名和密碼字段。如果我填寫用戶名和密碼字段並使用鍵盤上的「GO」按鈕,則數據會正確發送到服務器。Android 5.0.2網絡視圖密碼字段沒有發佈密碼實際輸入
但是,如果我不使用鍵盤的GO按鈕,並單擊「登錄」按鈕的網頁密碼發送爲******** e例如。似乎Android WebView
有某種錯誤。
我想通過從服務器輸出RAW發佈數據來解決這個問題。
SEE:
這不會在Chrome發生在Android或iOS設備。只是我的Android WebView
。網頁上沒有任何會導致此問題的JavaScript。我只是輸入密碼。
這是在Android 5.0.2和5.1上。它不會在使用WebView
的同一應用中的Android 4.3上發生。
這裏是我開始我的StoreWebActivity:
Intent intent=new Intent(StoreUrlActivity.this, StoreWebActivity.class);
intent.putExtra("storeUrl", savedStoreUrl);
startActivity(intent);
以下是我在onCreate
爲活動做:
this.webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(this, "android");
...
webView.loadUrl(storeUrl);
這種簡單的形式對測試(http://chrismuench.com/android_password_bug.php)
<?php
if (isset($_POST['password']))
{
var_dump($_POST['password']);
}
?>
<form action="" method="POST">
<input type="password" name="password">
<input type="submit">
</form>
問題
這是一個裸露的android應用程序,帶有一個web視圖,使用android工作室,顯示錯誤
https://github.com/blasto333/AndroidWebViewBug
我已經在Android 5.1版本測試過您的示例應用程序,它工作正常。 https://www.dropbox.com/s/858web06723gzay/Screenshot%202015-12-16%2010.59.54.png?dl=0 https://www.dropbox.com/s/oa68kk86fbuh62g/Screenshot %202015-12-16%2011.00.16.png?dl = 0 如果您可以發佈設備/仿真器信息,這將有所幫助。 –
謝謝!當你說你嘗試了不同的設備時,我試圖弄清楚什麼是不同的。當我使用SocketScan鍵盤/藍牙掃描儀時,這是發生時的情況。如果我將鍵盤切換回常規鍵盤,則按預期工作。我永遠不會認爲這會造成問題。我會讓公司知道這一點。 –