首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用WebView.loadUrl(string)加载存储在zip扩展文件中的png文件

使用WebView.loadUrl(string)加载存储在zip扩展文件中的png文件
EN

Stack Overflow用户
提问于 2012-08-31 18:17:50
回答 2查看 1K关注 0票数 2

我试图使用WebView.loadUrl(string)显示一个png文件,其中png文件存储在Android中的zip APK扩展文件中。展开文件的路径是:

代码语言:javascript
运行
复制
Environment.getExternalStorageDirectory()+"/Android/obb/com.example.myapp/main.1.com.example.myapp.obb";

因此,我使用以下方法显示文件mypicture.png

代码语言:javascript
运行
复制
String url = "jar:file:/" + Environment.getExternalStorageDirectory()+"/Android/obb/com.example.myapp/main.1.com.example.myapp.obb!/mypicture.png";

WebView wv;
... // code to setup the webview
wv.loadUrl(url);

我在链接处得到错误的网页没有可用的

jar:file://storage/sdcard0/Android/obb/com.example.myapp/main.1.com.example.myapp.obb!/mypicture.png

我知道我的扩展文件在那里,并且包含png文件,因为我有一些测试代码从扩展文件中提取png文件。当我指向提取的png文件wv.loadUrl(extracted_png_location)时,()将正确显示png文件。我只是无法让它显示png文件,即中,即zip扩展文件。

那么,压缩文件中的png文件的路径一定是错误的?或者可以直接在zip中的文件上使用loadUrl()吗?

EN

回答 2

Stack Overflow用户

发布于 2013-11-05 16:01:33

使用乔布工具打包扩展文件并使用StorageManager挂载它是一种很好的选择。在此之后,扩展文件中的文件应该可以作为文件系统中的常规文件访问。在这种情况下,不需要解压展开文件。

票数 1
EN

Stack Overflow用户

发布于 2013-09-26 09:36:23

我也有同样的问题。我的webview内容太大,无法在应用程序中交付,但是从扩展下载开始的压缩无法通过webview访问,因为它需要直接路径。

使用google的Zip是没有选择的,因为它只返回流,而webview不适用于流。

从路径加载数据的方法似乎是本机实现的,不可能覆盖任何内容。

解压缩是没有选择的,因为您不能删除zip文件。这个应用程序会注意到它,并开始重新下载它,所以无论如何你都需要保留它。

唯一的解决方案是编写自己的更新程序,它直接下载内容并解压缩。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12220639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档