将本地HTML文件加载到WebView中

我有一个本地的HTML页面以及它指向的其他几个资源(CSS文件和JavaScript库),我想加载到一个WebView。 这怎么能实现?

也许不是最好的办法,但我仍在试验。

最简单的方法可能是将您的networking资源放入资产文件夹,然后调用webView.loadUrl("file:///android_asset/filename.html"); 。 Java和Webview之间的完整通信请参阅此

可能这个样本可以帮助:

  WebView lWebView = (WebView)findViewById(R.id.webView); File lFile = new File(Environment.getExternalStorageDirectory() + "<FOLDER_PATH_TO_FILE>/<FILE_NAME>"); lWebView.loadUrl("file:///" + lFile.getAbsolutePath()); 

在这种情况下,使用WebView#loadDataWithBaseUrl()WebView#loadUrl()更好!

 webView.loadDataWithBaseURL(url, data, "text/html", "utf-8", null); 

url:url / path指向目录的string,所有的JavaScript文件和html链接都有其来源。 如果为null,则为:空白。 data:包含你的hmtl文件的string,例如用BufferedReader读取

更多信息: WebView.loadDataWithBaseURL(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)