我正在尝试从assets目录加载一个html页面.我尝试了这个,但它失败了.
public class ViewWeb extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WebView wv;
wv = (WebView) findViewById(R.id.webView1);
wv.loadUrl("file:///android_asset/aboutcertified.html"); // fails here
setContentView(R.layout.webview);
}
}
Run Code Online (Sandbox Code Playgroud)
我在LogCat中没有任何明显的错误...
我确实尝试过使用Google代码和其他资源的示例,演示WebView
,但是当我尝试在我自己的代码中执行此操作时,它对我不起作用.
我想加载myfile.html
我放在assets文件夹中,并使用:
private WebView myWebView;
myWebView.loadUrl("file:///android_assets/myfile.html");
Run Code Online (Sandbox Code Playgroud)
在模拟器上显示错误
file:///android_assets/myfile.html
无法加载网页:找不到请求的文件./android_assets/myfile.html
当我把该文件放到文件res/raw/
夹并使用:
myWebView.loadUrl("file:///android_res/raw/myfile.html");
Run Code Online (Sandbox Code Playgroud)
然后只有模拟器android 2.2 API级别8可能加载文件,其他旧版本显示相同的错误.我错过了什么吗?
有没有办法在适用于所有API版本的应用程序包中加载现有的.html文件?
在Android Studio/Gradle Android项目中,我有两个构建变体,Debug和Release(标准项目设置).
你可以在这张图片中看到我的文件夹结构:
我有一个WebView,它应该显示/ res/raw-folder中的imprint.html.WebView说,这适用于发布版本,但不适用于调试版本
Couldn't load website under 'file///android_res/raw/imprint.hml
net::EE_FILE_NOT_FOUND
Run Code Online (Sandbox Code Playgroud)
这让我很困惑.
我究竟做错了什么?
我有一个网页存储在Android应用程序的res/raw文件夹中.我想访问它并在我的活动中将其加载到webview中.任何人都可以告诉我,我该怎么做.我试过了
webView.loadUrl(getResources().openRawResource(R.raw.myHtmlPage).toString());
Run Code Online (Sandbox Code Playgroud)
但它工作而不是它给了一个破碎的页面.
请帮助我.
关于FAS