Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在android中从webview的文本框中获取值?_Java_Android_Webview - Fatal编程技术网

Java 如何在android中从webview的文本框中获取值?

Java 如何在android中从webview的文本框中获取值?,java,android,webview,Java,Android,Webview,您好,我想知道是否有任何方法可以从webviewhtml元素中获取值。 我确实在webview中加载了页面,如下所示 package example.samplewebview; import android.annotation.SuppressLint; import android.app.Activity; import android.os.Bundle; import android.webkit.WebView; public class MainActivity e

您好,我想知道是否有任何方法可以从
webview
html元素中获取值。 我确实在
webview
中加载了页面,如下所示

package example.samplewebview; 

import android.annotation.SuppressLint; 
import android.app.Activity; 
import android.os.Bundle; 
import android.webkit.WebView; 

public class MainActivity extends Activity {
    WebView wv;

    @SuppressLint("SetJavaScriptEnabled")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        wv = (WebView) findViewById(R.id.webView1);
        wv.getSettings().setJavaScriptEnabled(true);
        wv.loadUrl("http://www.google.com");
        wv.get
    }
} 
使用此google.com页面将加载到
webview
。 现在我想从搜索
textbox
中获取值并存储在数据库中
任何帮助都将不胜感激。

假设您不是谷歌,但您确实想使用您自己的网站,您可以对其进行修改,我建议您在您的网页上放置一个javascript,在Android应用程序中调用一个本机方法,只需提交此文本字段中的值即可


这里已经有一条关于这个主题的线索:

看看Selendroid。据我所知,Selenadroid是一个测试框架。请提供更多的规范。关于如何使用它。我不知道Selendroid是如何工作的(我只使用selenium),但尽管它经常用于测试目的,但它提供了与浏览器交互的可能性,包括从网站提取信息。在selendroids网站上,它声明它也可以与Androids WebView交互。这意味着它应该适合你的需要。只是谷歌机器人。我认为它应该可以工作。谢谢你,我为此做了谷歌,api中有一个webdriver类,但他们没有提供相关文档。因此,它似乎很难实现。无论如何,谢谢你的帮助。事实上我已经读过这个帖子了,但是我把它的值提交给了web服务器。我希望在java的activity extended类中的后端使用该值。如果页面已加载,则第一个答案会将数据传递到本机android层。如果用户按下按钮或类似按钮,您可能希望将数据传递到android层。在这之前,答案会为您指明正确的方向。view.loadUrl(“javascript:window.INTERFACE.processContent(document.getElementsByTagName('body')[0].innerText);”;在此加载中,url具有void类型,因此我无法执行字符串s=view.loadUrl(“javascript:window.INTERFACE.processContent(document.getElementsByTagName('body')[0].innerText);”;若这个文本框的值位于android层,那个么我如何将它存储在android(java)的变量中呢?谢谢你们的链接,我将试着弄清楚。