0

我正在尝试计算大文件(大约 60MB 或更多)的 md5 哈希值。该设备是具有 1GB RAM 和 16GB 的 Nexus 7,无法分配超过 30MB 的任何内容。代码因 java.lang.OutOfMemory 异常而失败。

而且我找不到任何方法可以将数据以零碎的方式添加到 Titanium.Utils.md5HexDigest()。它一次需要全部数据。

有什么办法可以解决这个问题吗?

我已经在 Marketplace 上搜索了任何可以帮助我做到这一点的产品。但我还没有找到。

4

1 回答 1

0

你提到它是为了确定是否再次下载它。所以,它来自某处的服务器。

MD5在下载文件时,您应该已经将其存储在应用程序中,而不是重新计算。因此,只需将存储MD5 Hash的内容与服务器上的内容进行比较。这为您省去了很多麻烦,实际上不需要您重新计算。它还极大地加快了应用程序的速度。

于 2013-06-21T10:53:55.827 回答