内嵌app 的web 页面如何应用 app 内置的静态文件

如题:
目前打算做一个内嵌在安卓 APP 里面的页面
打算把静态文件也放在 app 里面。
还要求能跟随版本更新~
求大神指导

阅读 6.4k
3 个回答

把静态文件放在assets文件夹下,如果这个文件是个html文件,可以用webview.loadUrl("file:///android_asset/demo.html")方式加载,如果是其他文件,可以通过InputStream in = context.getAssets().open("demo.js");方式读取,比如js文件,可以通过如下方式读取并注入到html页面中

InputStream in = context.getAssets().open("demo.js");
byte buff[] = new byte[1024];
ByteArrayOutputStream fromFile = new ByteArrayOutputStream();
do {
    int numread = in.read(buff);
    if (numread <= 0) {
        break;
    }
    fromFile.write(buff, 0, numread);
} while (true);
jsString = fromFile.toString();   
webview.loadUrl("javascript:"+jsString);

web页面相关的文件放到assets里面就可以了。

WebView.load(url) 支持本地路径
也支持加载assets目录里的文件

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题