使用Android-Studio,我尝试使用WebView加载包含javascript的本地html文件强>。
首先,我在 Java
文件夹内创建了一个 assets
文件夹。然后,我在 Assets 文件夹中创建了两个文件夹:html
和scripts
。我将 index.html
页面放在 html 文件夹中,并将 index.js
文件放在 script 文件夹中。这两个路径在 Android-Studio 中如下所示:
- app/java/assets/html/index.html
- app/java/assets/scripts/index.js
现在,当我尝试加载index.html时,我使用以下语法:
myWebView.loadUrl("file:///assets/html/index.html");
但它不起作用。我还使用了以下各项:
myWebView.loadUrl("file://assets/html/index.html");
myWebView.loadUrl("file://android_assets/html/index.html");
myWebView.loadUrl("file:///android_assets/html/index.html");
但是,当页面加载时,它显示“网页不可用”!!
应用程序运行正常, Intent 启动,并且网页加载时显示上述警告消息。
- 从本地创建的文件夹加载网页的正确语法是什么?
- 在index.html 中加载index.js 的正确语法是什么?
这是代码:
public class DisplayMessageActivity extends Activity {
private WebView myWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_message);
myWebView = (WebView) findViewById(R.id.webview);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.loadUrl("file:///android_assets/html/index.html"); // doesn't work
// myWebView.loadUrl("http://www.example.com"); // works
}
<小时/>
更新
这是index.html
:
<html>
<header><title>This is title</title></header>
<body>
Hello world
</body>
</html>
目前没有 JavaScript。
最佳答案
在 main 下创建 asset 文件夹(不在 java 内),然后使用
myWebView.loadUrl("file:///android_asset/html/index.html");
不是
myWebView.loadUrl("file:///android_asset**s**/html/index.html");
关于javascript - 如何从本地创建的文件夹加载 WebView 上的网页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39409591/