我确实使用 WebView
尝试了来自 Google 代码和其他资源的示例、演示,但是当我尝试在自己的代码中进行时,它对我不起作用。
我想加载我放在 assets 文件夹中的 myfile.html
,并使用:
private WebView myWebView;
myWebView.loadUrl("file:///android_assets/myfile.html");
在模拟器上显示错误
The web page at
file:///android_assets/myfile.html
could not be loaded as: The requested file was not found./android_assets/myfile.html
当我将该文件放入 res/raw/
文件夹并使用时:
myWebView.loadUrl("file:///android_res/raw/myfile.html");
那么可能只有模拟器 android 2.2 API 级别 8 可以加载文件,其他旧版本显示相同的错误。我错过了什么吗?
有没有办法在适用于所有 API 版本的应用程序包中加载现有的 .html 文件?
最佳答案
好吧,那是我非常愚蠢的错误。我在这里发布答案以防万一有人遇到同样的问题。
Assets 文件夹中存储的文件的正确路径是 file:///android_asset/*
( Assets 文件夹没有“s”,我一直认为它必须有一个“s”) .
而且,mWebView.loadUrl("file:///android_asset/myfile.html");
适用于所有 API 级别。
我仍然不明白为什么 mWebView.loadUrl("file:///android_res/raw/myfile.html");
仅适用于 API 级别 8。但现在没关系了.
关于android - 使用 android WebView 加载现有的 .html 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4027701/