2016-06-17 2 views
0

Как измерить downloadTask Скорость:Как измерить скорость ios nsurlsession?

Метод, который я думал, что это:

известково Страшного 3s средн скорость, и сброс принятых байт после 3s, и начать NSTimer которой каждый 0.8S вызов один раз.

Но это вызовет проблему: после того, как 3-й вызов NSTimer сразу же, принятые байты были сброшены на 0, но мне нужна плавная скорость.

+0

http://stackoverflow.com/questions/12271502/best-way-to-measure-download-speed-on-iphone -using-cocoa-touch –

+0

Вы хотите что-то вроде бара, чтобы показать, сколько загрузки сделано? –

ответ

0

Во-первых, используйте NSURLSessionDelegate. Если вы используете метод completHandler: методы делегирования не будут вызываться. Тогда в:

-(void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data 

вы можете добавить свой собственный счетчик [data length]. Собирайте и перезагружайте его синхронизированным способом, используя NSTimer, и у вас есть это. Помните, что NSTimer не стреляет точно так, как указано, поэтому, если вам нужна более высокая точность, запоминайте точное время измерений

Смежные вопросы