InApp PurchaseRetrieving Product Information(3)

Retrieving(检索) Product Information

When your application is ready to display a store to the user, it must populate(填充、移民) its user interface with information from the App Store. This chapter details how to request product details from the App Store.

Sending Requests to the App Store

Store Kit provides a common mechanism to request information from the App Store. Your application creates and initializes a request object, attaches a delegate to it, and starts the request. Starting a request transmits(发送) it to the App Store, where it is processed. When the App Store processes the request, the request’s delegate is called asynchronously(异步) to deliver the results to your application. Figure 2-1 shows the request model.

Figure 2-1  Store Kit request model

 

If your application quits while a request is pending(挂起), your application needs to resend it.

SKRequest

SKRequest is an abstract base class for requests sent to the store.

SKRequestDelegate

SKRequestDelegate is a protocol that your application implements to handle requests that completed successfully and requests that failed because of an error.

Requesting Information About Products

Your application uses a products request to retrieve localized information about a product. Your application creates a request that contains a list of product identifier strings. As described earlier, your application might embed product identifiers inside your application or it might retrieve the identifiers from an external server.

When you start the products request, the product identifier strings are transmitted to the App Store. The App Store responds with the localized information you previously entered in iTunes Connect. You use these details to populate the user interface of your store. Figure 2-2 shows a products request.

Figure 2-2  A request for localized product information

 

Important You must make a product request for a particular product identifier before allowing the user to purchase that product. Retrieving product information from the App Store ensures that you are using a valid product identifier for a product you have marked available for sale in iTunes Connect.

 

SKProductsRequest

An SKProductsRequest object is created with a list of product identifier strings for the products you want to display in your store.

SKProductsRequestDelegate

The SKProductsRequestDelegate protocol is implemented by an object in your application to receive the response from the store. It receives the response asynchronously when the request is successfully processed.

SKProductsResponse

An SKProductsResponse object contains a SKProduct object for each valid product identifier in the original request as well as a list of the product identifiers that were not recognized by the store. The store might not recognize the identifier for a number of reasons; it might be misspelled, marked unavailable for sale, or changes you have made in iTunes Connect have not propagated to all of the App Store servers.

SKProduct

An SKProduct object provides localized information about a product you’ve registered with the App Store.

 

THE END !

原文地址:https://www.cnblogs.com/xingchen/p/2406536.html