MKStoreKit 恢复购买总是成功
MKStoreKit restore purchases always success
我正在尝试制作一个简单的 IAP 来删除我应用程序的所有广告。
当我购买 IAP 时它有效,但是当我尝试 restore
使用透明沙盒帐户(从未购买过 IAP)购买时,它有效。
因此,restorePurchases()
始终有效,即使用户之前没有购买 IAP。
这是我的代码:
当用户 select 恢复按钮时,我执行此方法:
func restaureIAP() {
PKNotification.toast("Chargement en cours...")
MKStoreKit.sharedKit().restorePurchases()
}
我也添加了观察者:
// Product restaure
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoredPurchasesNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
PKNotification.success("Restauré !")
print ("Succes restaure: \(note.object)")
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "isPurchase")
}
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoringPurchasesFailedNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
PKNotification.failed("Erreur")
print ("Failed restaure: \(note.object)")
}
此应用程序在 AppStore
上可用,但有同样的问题:购买 IAP 作品但 restore
购买总是成功。
你有什么想法吗?
您可以与 MKStoreKitRestoredPurchasesNotification
和 kMKStoreKitRestoringPurchasesFailedNotification
观察员一起检查已恢复的交易。
MKStoreKit.sharedKit().startProductRequest()
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoredPurchasesNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
print ("Restored product: \(note.object)")
}
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoringPurchasesFailedNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
print ("Restored failed")
}
我正在尝试制作一个简单的 IAP 来删除我应用程序的所有广告。
当我购买 IAP 时它有效,但是当我尝试 restore
使用透明沙盒帐户(从未购买过 IAP)购买时,它有效。
因此,restorePurchases()
始终有效,即使用户之前没有购买 IAP。
这是我的代码: 当用户 select 恢复按钮时,我执行此方法:
func restaureIAP() {
PKNotification.toast("Chargement en cours...")
MKStoreKit.sharedKit().restorePurchases()
}
我也添加了观察者:
// Product restaure
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoredPurchasesNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
PKNotification.success("Restauré !")
print ("Succes restaure: \(note.object)")
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "isPurchase")
}
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoringPurchasesFailedNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
PKNotification.failed("Erreur")
print ("Failed restaure: \(note.object)")
}
此应用程序在 AppStore
上可用,但有同样的问题:购买 IAP 作品但 restore
购买总是成功。
你有什么想法吗?
您可以与 MKStoreKitRestoredPurchasesNotification
和 kMKStoreKitRestoringPurchasesFailedNotification
观察员一起检查已恢复的交易。
MKStoreKit.sharedKit().startProductRequest()
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoredPurchasesNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
print ("Restored product: \(note.object)")
}
NSNotificationCenter.defaultCenter().addObserverForName(kMKStoreKitRestoringPurchasesFailedNotification,
object: nil, queue: NSOperationQueue.mainQueue()) { (note) -> Void in
print ("Restored failed")
}