如何在android 4.2.2上访问Titanium.Network.HttpClient.responseData缓存

时间:2013-06-21 06:26:35

标签: android titanium appcelerator

我正在尝试使用Titanium SDK v3.1.1.GA为android 4.2.2编写一个nexus 7的下载管理器应用程序。一切正常,但我无法从中止的连接恢复下载。

假设我已经下载了1024字节文件的546个字节,然后连接中止了。所以下次我连接时我想从547字节开始下载 - 1024字节。但我无法意识到已经下载了546个字节。

由于:

  1. 这些546个字节存储在我无法访问的应用缓存目录(/sdcard/Android/data/com.packagename/cache/_tmp/tihttp-XXXXXXXXXXXtmp)中,并且文档说不依赖于这些文件。

  2. 我还尝试在ondatastream回调中逐步写入目标文件。但问题是数据在连接的整个生命周期中在HTTPClient.responseData中累积,我无法从中删除已读取的数据,因为它是一个只读属性。

  3. 所以我唯一的选择就是在onload回调中写入文件。但是如果没有调用中止onload回调,我将丢失所有缓存的数据,并且在HTTPClient.responseData中可用。

0 个答案:

没有答案