0

我在过去 2 天面临一个问题,我们如何在 Google Play 上上传大小超过 50Mb 的 .apk 文件,然后我找到了一种从链接http://developer.android.com上传带有 APK 扩展文件的 .apk 的方法/guide/market/expansion-files.html 现在 m 最终成功但现在 m 遇到问题我如何从对象中的主扩展文件中读取文件,就像它是 .obb 格式一样

但现在可以使用主扩展文件中的 .mp3 文件,例如:

AssetFileDescripto assetFileDescriptor = zipResourceFile.getAssetFileDescriptor( 
  "assets/all_types_of_people1.mp3");
mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource( assetFileDescriptor.getFileDescriptor(), 
  assetFileDescriptor.getStartOffset(),assetFileDescriptor.getLength());

但是我们如何将主扩展文件中的图像使用到 WebView 中呢?

4

3 回答 3

1

由于可以从 zipResourceFile 获取流,因此可以使用 BitmapFactory 从它们创建图像。

InputStream is = zipResourceFile.getInputStream("myFilePath.jpg");
BitmapFactory.Options bfo = new BitmapFactory.Options();
bfo.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap b = BitmapFactory.decodeStream(is, null, bfo);

请注意,由于解码需要一些时间,因此您需要在 UI 线程之外执行此操作。

于 2012-06-05T23:53:24.773 回答
0

dagalpin 已经给出了如何获取 InputStream 的方法。

读取您的 HTML 文件并将其转换为 UTF-8 字符串。

并加载如下。


// you can also load from an HTML string:
 String summary = "<html><body>You scored <b>192</b> points.</body></html>";
 webview.loadData(summary, "text/html", null);
 // ... although note that there are restrictions on what this HTML can do.
 // See the JavaDocs for loadData() and loadDataWithBaseURL() for more info.

我还没有测试过。但它似乎正在工作。

于 2012-09-25T11:34:23.770 回答
0

而不是仅使用图像名称扩展文件/myFilePath.jpg

InputStream is = zipResourceFile.getInputStream("expansionfile/myFilePath.jpg");

于 2014-05-14T12:19:20.137 回答