Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
Javascript 执行webview loadUrl()时,在参数列表后出现“未捕获的语法错误:丢失)”错误_Javascript_Java_Android_Webview - Fatal编程技术网

Javascript 执行webview loadUrl()时,在参数列表后出现“未捕获的语法错误:丢失)”错误

Javascript 执行webview loadUrl()时,在参数列表后出现“未捕获的语法错误:丢失)”错误,javascript,java,android,webview,Javascript,Java,Android,Webview,这是我要执行的javascript代码 我的界面的GetMeansion函数只是打印hi 我认为我的javascript代码没有问题 但我不知道为什么会发生此错误。我感觉字符串周围缺少引号。您的方法getMeansion接受一个字符串,但是您没有将字符串传递给它。通过将传递的值用引号括起来表示错误应该消失 注意:我的java没有达到标准,但是它应该看起来像这样: private String getMeaningJavascript = "javascript:JavaScriptInterfa

这是我要执行的javascript代码

我的界面的GetMeansion函数只是打印hi

我认为我的javascript代码没有问题


但我不知道为什么会发生此错误。

我感觉字符串周围缺少引号。您的方法getMeansion接受一个字符串,但是您没有将字符串传递给它。通过将传递的值用引号括起来表示错误应该消失

注意:我的java没有达到标准,但是它应该看起来像这样:

private String getMeaningJavascript = "javascript:JavaScriptInterface.getMeaning (function test() {return 'hi';} test();)";
...
this.loadUrl(getMeaningJavascript);
...
public class JavaScriptInterface {

    @JavascriptInterface
    public void getWord(String text){
        wordAndMeaning += text;
        Log.w("test",text);
    }

    @JavascriptInterface
    public void getMeaning(String text) {
        Log.w("test",text);
    }

}

这是无效的javascript:javascript:JavaScriptInterface.GetMeansion函数测试{return'hi';}test;如果它应该是一个字符串,那么您就错过了quotes@GetOffMyLawn从技术上讲,它是有效的,因为它是一个URL。谢谢,但我想把“hi”传递给GetMeansion函数。但是您的答案打印函数测试{return'hi';}test;。它正在打印,因为您告诉它:Log.wtest,text;我没有详细解释。我想运行JavaScript函数并获取返回的文本作为GetMeansion函数的参数。例如,这是另一个将querySelector值传递给getword函数的代码。this.loadUrljavascript:JavaScriptInterface.getWorddocument.querySelector\html bodybodyClass divcontent div.entry\u search\u word.top div.h\u word.\u tipSkipItem strong.target\.innerHTML;
private String getMeaningJavascript = 
  "javascript:JavaScriptInterface.getMeaning (\"function test() {return 'hi';} test();\")";