您可以通过计算到目前为止的平均传输速率(接收的字节数/经过的时间)并将其应用于剩余的字节数来估计剩余时间。
在您NSURLConnectionDelegate
的 实现中,-connection:didReceiveResponse:
您需要记录传输开始的时间和响应的预期大小 ( -[NSURLResponse expectedContentLength]
)。然后,当您通过接收数据块时,-connection:didReceiveData:
您可以跟踪接收到的数据字节数。这将为您提供足够的信息来估计如上所述的剩余时间。