3

该问题已记录在Android 问题跟踪器中。

有人找到解决方法吗?

它破坏了 Google Play 上多个已发布的应用程序。

4

1 回答 1

2

首先,关于您对使用 APK 扩展的某些应用的评论仍然有效的简短说明。使用 APK 扩展文件不等于将 OBB 挂载为文件系统。APK 扩展文件可以是任何东西,它只是一个二进制文件。

现在回答您有关可能的解决方法的问题。我只想指出,如果安装 OBB 不起作用,那么没有一个简单的(即不更改某些代码)。幸运的是,您必须更改的代码量并不多,并且有一些库可以帮助您。所以,说到重点……

APK 扩展文件的一种用途显然是在内部保存一个文件系统,但您也可以将文件连接成一个大二进制 blob 并保存(如在文本文件或代码中)位置(偏移量)和长度(字节count ) APK 扩展文件中的每个文件。在运行时,每当您需要读取某个文件时,您只需打开大型二进制文件并从offset开始读取count个字节。

如果您希望格式更易于阅读并且不必自己计算偏移量和字节数,您可以只使用 ZIP 文件格式,但关闭压缩(通过在您选择的 ZIP 工具中设置压缩 = 0)。实际上,Android 中有一些类可以支持您轻松地从 ZIP 中读取数据。您可以在此处阅读有关此方法的更多信息

于 2013-12-05T14:15:01.930 回答