Instance Method

URLSession:dataTask:didReceiveData:

Tells the delegate that the data task has received some of the expected data.

Declaration

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

Parameters

session

The session containing the data task that provided data.

dataTask

The data task that provided data.

data

A data object containing the transferred data.

Discussion

Because the data object parameter is often pieced together from a number of different data objects, whenever possible, use the enumerateByteRangesUsingBlock: method to iterate through the data rather than using the bytes method (which flattens the data object into a single memory block).

This delegate method may be called more than once, and each call provides only data received since the previous call. The app is responsible for accumulating this data if needed.