IAP работает, но когда я перемещаюсь между представлениями и возвращаюсь к IAP VC, приложение выходит из строя в SKPaymentQueue.defaultQueue().addPayment(payment)
ERROR: EXC_BAD_ACCESS
SKPaymentQueue.defaultQueue(). AddPayment (платеж) Сбой при перемещении между VC Swift
Ответ 1
Я нашел решение, нужно убрать SKPaymentQueue
в представлении viewWillDisappear
Обновление Swift 4.2
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
SKPaymentQueue.default().remove(self)
}
Swift 2.3
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated: animated)
SKPaymentQueue.defaultQueue().removeTransactionObserver(self)
}
Ответ 2
Я использую свой класс вместо viewController.
import StoreKit
open class IAPHelper: NSObject {
//Properties
public init() {
//init properties
super.init()
SKPaymentQueue.default().add(self)
}
deinit {
SKPaymentQueue.default().remove(self)
}
}