Type Alias


The signature for a block that Photos calls while downloading asset data from iCloud. Used by the progressHandler property.


typedef void (^PHAssetImageProgressHandler)(double progress, NSError *error, BOOL *stop, NSDictionary *info);


If you request an image whose data is not on the local device, and you have enabled downloading with the networkAccessAllowed property, Photos calls your block periodically to report progress and to allow you to cancel the download.

The block takes the following parameters:


A floating-point value indicating the progress of the download. A value of 0.0 indicates that the download has just started, and a value of 1.0 indicates the download is complete.


An NSError object describing an error that occurred when attempting to download the image, or nil if no errors have occurred.


A pointer to a Boolean value. To cancel the download, set *stop to YES inside the block.


A dictionary providing additional information about the status of the image request. See Image Result Info Keys for possible keys and values. For example, a YES value for the key PHImageResultIsDegradedKey indicates that Photos may send the full-quality version of the image later, depending on the value of the image request’s deliveryMode property.

See Also

Fetching Image Data from iCloud


A Boolean value that specifies whether Photos can download the requested image from iCloud.


A block that Photos calls periodically while downloading the image.