kla*_*han 181 android local android-webview
我有一个本地html页面以及它所指向的其他几个资源(css文件和Javascript库),我想加载到WebView中.怎么能实现这一目标?
也许不是最好的方式,但我还在试验.
Joe*_*Joe 339
最简单的方法可能是将您的Web资源放入assets文件夹然后调用:
webView.loadUrl("file:///android_asset/filename.html");
Run Code Online (Sandbox Code Playgroud)
对于Java和Webview之间的完整通信请参阅此
更新:资产文件夹通常是以下文件夹:
<project>/src/main/assets
可以在文件的资产文件夹配置设置中<app>.iml更改为:
<option name=”ASSETS_FOLDER_RELATIVE_PATH” value=”/src/main/assets” />
请参阅文章将资源文件夹放在Android Studio中的位置
小智 24
可能这个样本可以帮助:
WebView lWebView = (WebView)findViewById(R.id.webView);
File lFile = new File(Environment.getExternalStorageDirectory() + "<FOLDER_PATH_TO_FILE>/<FILE_NAME>");
lWebView.loadUrl("file:///" + lFile.getAbsolutePath());
Run Code Online (Sandbox Code Playgroud)
在这种情况下,使用WebView#loadDataWithBaseUrl()优于WebView#loadUrl()!
webView.loadDataWithBaseURL(url,
data,
"text/html",
"utf-8",
null);
Run Code Online (Sandbox Code Playgroud)
url:url/path指向所有JavaScript文件和html链接的目录的字符串.如果为null,则为:空白.data:包含hmtl文件的字符串,例如,使用BufferedReader读取