2016-11-02 66 views
0

我想將我的本地(from assets folderjs文件加載到webview中,但它一直在拋出錯誤Uncaught reference, method hello not found。但是,當我嘗試以相同的方式加載HTML文件。無法在webview中加載沒有html的javascript Android

內容我的js文件:

function hello(p1, p2) { 
    console.log(5 + 6); 
    return p1 * p2; 
}; 

我加載該文件到一個片段

webView = new WebView(getContext()); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.getSettings().setAllowFileAccess(true); 
     webView.setWebChromeClient(new WebChromeClient() { 
      @Override 
      public boolean onConsoleMessage(ConsoleMessage consoleMessage) { 
       Log.d("test--test--test--resp", consoleMessage.message()); 
       return super.onConsoleMessage(consoleMessage); 
      } 
     }); 
     webView.loadUrl("file:///android_asset/test.js"); 
     webView.addJavascriptInterface(this, ""); 

     webView.setWebViewClient(new WebViewClient() { 
      @Override 
      public void onPageFinished(WebView view, String url) { 
       super.onPageFinished(view, url); 
       webView.loadUrl("javascript:hello(1,2)"); 
      } 
     }); 

可有人請指出什麼我失蹤或者我怎麼能正確地加載javascript文件,而不html

回答

0

嘿,經過幾次實驗後得到了答案。在webview中如果要運行/加載JS文件使用loadUrl方法沒有html的JS文件的內容應該在 <script></script><script></script>標記。

相關問題