Classes▲
A product registered in the store. |
|
Contains information about a transaction in the external app store. |
|
Comminucates with external store. |
Check out Base Classes which include InAppProduct, InAppStore, InAppTransaction and InAppPurchaseBackend
IosInAppPurchaseProduct▲
IosInAppPurchaseProduct adds purchase() for initializing purchasing process.
IosInAppPurchaseTransaction▲
IosInAppPurchaseTransaction adds new parameters and return types. Transaction error handling is implemented on IosInAppPurchaseTransaction's constructor. The class has the finalize() function that finalizes the transaction.
IosInAppPurchaseBackend▲
IosInAppPurchaseBackend uses Objective-C language to communicate with the App Store.
Initializing the products▲
This class shows the product's information on the store page.
-
IosInAppPurchaseBackend is called from InAppStore::setupBackend().
-
At initialization IosInAppPurchaseBackend creates InAppPurchaseManager with Objective-C.
-
InAppStore::registerProduct(productType, &identifier) function is called and queryProduct() is executed in the back end.
-
Objective-C function requestProductData:() is called and will make SKProductRequest.
-
After SKProductRequest is finished and product objects has been created in Objective-C productsRequest:(), products will be registered by the IosInAppPurchaseBackend::registerProduct() function.
-
Signal productQueryDone() will be emitted and the item's information will be visible on the application's store page.
Purchasing process▲
-
The user presses one of the products on the applications store page.
-
IosInAppPurchaseProduct::purchase() function is called and payment is added to the SKPaymentQueue in the Objective-C function paymentQueue:() in IosInAppPurchaseBackend.
-
Purchase confirmation pop-up is launched for the user.