2

使用

"react": "16.9.0",
"react-native": "0.61.5",
"react-native-purchases": "^3.0.6",

我们在通过 iOS 版本 13.3.1 上的 testflight 运行的 11 英寸 iPad 上遇到问题。一切都在所有模拟器上运行,我们的 iPhone 和在 testflight 上运行的其他 iPad 也能正常工作。

问题是 Purchases.purchasePackage 返回的承诺既没有解决也没有拒绝 - 它挂起。在梳理了原生 Obj-C 代码后,我在 Pods/Purchases/RCPurchases.m 文件中找到了相关代码。方法

- (void)purchaseProduct:(SKProduct *)product withPayment:(SKMutablePayment *)payment withPresentedOfferingIdentifier:(nullable NSString *)presentedOfferingIdentifier completion:(RCPurchaseCompletedBlock)completion

正在被调用,并且该行

[self.storeKitWrapper addPayment:[payment copy]];

被调用,但是回调方法

- (void)storeKitWrapper:(RCStoreKitWrapper *)storeKitWrapper
     updatedTransaction:(SKPaymentTransaction *)transaction

永远不会被调用。这可能是 SKPaymentQueue 的潜在问题吗?

谢谢!

4

1 回答 1

1

事实证明,我的 iPad 实际上使用的是旧版本的 iOS。更新它解决了这个问题。

于 2020-02-14T20:50:04.957 回答