我为我的网站创建了一个Webview android应用程序,以便拥有我的网站的android版本。该网站允许用户登录,然后再访问网站信息。
请问,如何在Webview android应用中从网站获取用户登录的详细信息(例如电子邮件)?
答案 0 :(得分:0)
您可以使用此功能获取WebView
的内容:
yourWebView.evaluateJavascript(
"(function() { return ('<html>'+document.getElementsByTagName('html')[0].innerHTML+'</html>'); })();",
new ValueCallback<String>() {
@Override
public void onReceiveValue(String html) {
Log.d("HTML", html);
// Here you work with the content of the page which is stored in the 'html' variable
}
});
由于您能够读取页面的内容,因此可以在网站的隐藏字段(例如<input type="hidden" id="emailAddress" name="emailAddress" value="someone@example.org">
)中隐藏要阅读的数据。
或者您可以创建自己的Activity
,用户可以在其中插入他的电子邮件地址,然后可以使用WebView.postUrl(String url, byte[] postData)
功能(例如webView.postUrl("https://yourWebsite.com/index.php", "emailAddress=someone@example.org".getBytes());
在网站上张贴插入的电子邮件地址)。
来源: https://developer.android.com/reference/android/webkit/WebView.html how to get html content from a webview? How to post data for WebView android