【发布时间】:2012-08-12 18:05:16
【问题描述】:
我有一个显示地图的安卓应用。这些地图是高分辨率图像,每张地图切成 100 个图块以保持分辨率。我目前将每张地图放在资产文件夹中的单独文件夹中。由于这使我的 apk 很大,我想将这些图像移动到我的主 apk 扩展文件中。 目前我正在使用以下代码在 webview 中显示图像,以便在 webview 中将图块拼接在一起:
class ShowMapTask extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... maps) {
String html = "<html><table cellpadding=\"0\" border=\"0\" cellspacing=\"0.0\">";
for (int i = 0; i < 10; i++) {
html += "<tr>";
for (int j = 0; j < 10; j++)
html += "<td><img src=\"maps/" + maps[0] + "/slice_" + i
+ "_" + j + ".png\"></td>";
html += "</tr>";
}
return html + "</table></html>";
}
@Override
protected void onPostExecute(String result) {
WebView wv = (WebView) context.findViewById(R.id.webView);
wv.getSettings().setSupportZoom(true);
wv.getSettings().setBuiltInZoomControls(true);
wv.getSettings().setUseWideViewPort(true);
wv.getSettings().setLoadWithOverviewMode(true);
wv.loadDataWithBaseURL("file:///android_asset/", result,
"text/html", "utf-8", null);
super.onPostExecute(result);
}
}
如何迁移到 apk 扩展文件?是否可以在不将 obb 解压缩到 sdcard 的情况下使用图像?
【问题讨论】:
-
你解决过这个问题吗?我有 API 11 及更高版本的解决方案,请参阅stackoverflow.com/questions/13073594/… 我正在使用 webview.loadUrl,但我已经验证它与 webview.loadDataWithBaseURL 的工作原理相同,但仍然需要 API 10 的解决方案
-
无法解决这个问题。我目前正在将 obb 提取到 sdcard 并使用那里的图像。
标签: android image webview apk expansion