我正在尝试为大文件(大约60MB或更多)计算md5哈希值。该设备是1GB内存和16GB的Nexus 7,无法分配超过30MB的内容。代码失败,出现java.lang.OutOfMemory异常。
我没有找到任何方法以零碎的方式向Titanium.Utils.md5HexDigest()添加数据。它需要一次完整的数据。
有什么方法可以解决这个问题吗?
我搜索过任何可以帮助我在Marketplace上执行此操作的产品。但我没有找到任何。
答案 0 :(得分:0)
你提到确定是否要再次下载。所以,它来自某个地方的服务器。
而不是重新计算MD5
,您应该在首先下载文件时将其存储在应用程序中。因此,只需将存储的MD5 Hash
与服务器上的{{1}}进行比较。这为您省去了很多麻烦,实际上并不需要您重新计算。它还极大地加速了应用程序。