누군가가 asihttprequest를 도와 줄 수 있습니까?asihttprequest로 단일 다운로드 속도를 추적하는 방법
다운로드하는 각 파일의 속도 다운로드를 추적하고 모든 파일의 평균 속도를 추적하고 싶지 않습니다.
평균 다운로드 수는 모두 [ASIHTTPRequest averageBandwidthUsedPerSecond]
이지만 다운로드 수를 추적하려면 무엇을 사용할 수 있습니까?
감사
누군가가 asihttprequest를 도와 줄 수 있습니까?asihttprequest로 단일 다운로드 속도를 추적하는 방법
다운로드하는 각 파일의 속도 다운로드를 추적하고 모든 파일의 평균 속도를 추적하고 싶지 않습니다.
평균 다운로드 수는 모두 [ASIHTTPRequest averageBandwidthUsedPerSecond]
이지만 다운로드 수를 추적하려면 무엇을 사용할 수 있습니까?
감사
당신은 요청을 얻을 것이다 각 요청에 대한 downloadProgressDelegate 설정할 수 있습니다 didReceiveBytes를 : 일부 데이터가 수신 될 때마다 호출 - 당신은 다운로드 속도를 계산하기 위해 그것을 사용할 수 있습니다.
이 문서에 여기를 참조하십시오 :
http://allseeing-i.com/ASIHTTPRequest/How-to-use#custom_progress_tracking
이 ASI가 죽었을 고려, 내가 최근에 이전 프로젝트에서이 작업을 수행했다. 다른 사람이 도움을 필요로하는 경우 :
-(void)request:(ASIHTTPRequest *)request didReceiveBytes:(long long)bytes
{
if (!lastBytesReceived)
lastBytesReceived = [NSDate date];
NSTimeInterval interval = [[NSDate date] timeIntervalSinceDate:lastBytesReceived];
float KB = (bytes/1024);
float kbPerSec = KB * (1.0/interval); //KB * (1 second/interval (less than one second))
NSLog(@"%llu bytes received in %f seconds @ %0.01fKB/s",bytes,interval, kbPerSec);
lastBytesReceived = [NSDate date];
}
첫 번째받은 바이트로부터 경과 된 총 시간은 어떻게 계산합니까? – Alby
[NSDate date]의 결과를 didReceiveResponseHeaders 대리자 메서드에 저장 한 다음 didReceiveBytes에서 [NSData timeIntervalSinceReferenceDate :]를 사용합니다. – JosephH