-
Notifications
You must be signed in to change notification settings - Fork 810
Open
Labels
Description
Question
I'm trying to get Promo Codes Redeemed from the app store to work inside my iOS app. Please note that these are different from offer codes - which are used for subscriptions and work with presenting an UI.
After I generate a promo code from appstoreconnect the flow from a user perspective is:
- Go to App Store -> Profile
- Go to Redeem Gift Card or Code
- Input code
- Tap Open App
- My app opens but no IAP is triggered by
SwiftyStoreKit.completeTransactions.
I'm using SwiftyStoreKit and in applicationDidFinishLaunching I've put the code:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// see notes below for the meaning of Atomic / Non-Atomic
SwiftyStoreKit.completeTransactions(atomically: true) { purchases in
for purchase in purchases {
switch purchase.transaction.transactionState {
case .purchased, .restored:
if purchase.needsFinishTransaction {
// Deliver content from server, then:
SwiftyStoreKit.finishTransaction(purchase.transaction)
}
// Unlock content
case .failed, .purchasing, .deferred:
break // do nothing
}
}
}
return true
}
and handle the delivering functionality of the IAP before calling :
SwiftyStoreKit.finishTransaction(purchase.transaction)
But there seems there is no call to the SwiftyStoreKit.completeTransactions callback.
Isn't this the method that should get called to make redeeming promo codes work ?