Class

SKDownload

Downloadable content associated with a product.

Declaration

@interface SKDownload : NSObject

Overview

When you create a product in App Store Connect, you can associate one or more pieces of downloadable content with it. At runtime, when a product is purchased by a user, your app uses SKDownload objects to download the content from the App Store.

Your app never directly creates a SKDownload object. Instead, after a payment is processed, your app reads the transaction object’s downloads property to retrieve an array of SKDownload objects associated with the transaction.

To download the content, you queue a download object on the payment queue and wait for the content to be downloaded. After a download completes, read the download object’s contentURL property to get a URL to the downloaded content. Your app must process the downloaded file before completing the transaction. For example, it might copy the file into a directory whose contents are persistent. When all downloads are complete, you finish the transaction. After the transaction is finished, the download objects cannot be queued to the payment queue and any URLs to the downloaded content are invalid.

Topics

Getting Content Information

expectedContentLength

The length of the downloadable content, in bytes.

contentIdentifier

A string that uniquely identifies the downloadable content.

contentVersion

A string that identifies which version of the content is available for download.

transaction

The transaction associated with the downloadable file.

contentLength

The length of the downloadable content, in bytes.

Deprecated

Getting State Information

state

The current state of the download object.

progress

A value that indicates how much of the file has been downloaded.

timeRemaining

An estimated time, in seconds, to finish downloading the content.

SKDownloadTimeRemainingUnknown

Indicates that the system cannot determine how much time is needed to finish downloading the content.

SKDownloadState

The states that a download operation can be in.

downloadState

The current state of the download object.

Deprecated

Accessing a Completed Download

error

The error that prevented the content from being downloaded.

contentURL

The local location of the downloaded file.

Managing Downloaded Content

+ contentURLForProductID:

Returns the local location for the previously downloaded flie.

+ deleteContentForProductID:

Deletes the previously downloaded file.

Relationships

Inherits From

See Also

Delivering Content

Processing a Transaction

Register a transaction queue observer to get and handle transaction updates from the App Store.

SKReceiptRefreshRequest

A request to refresh the receipt, which represents the user's transactions with your app.

SKRequest

An abstract class that represents a request to the App Store.

SKPaymentTransaction

An object in the payment queue.

SKTerminateForInvalidReceipt

Terminates an app if the license to use the app has expired.