【发布时间】:2021-09-08 23:29:18
【问题描述】:
现在我正在使用 Flutter 开发 iOS 应用内购买。这是客户购买成功时我的验证码截图:
void _listenToPurchaseUpdated(List<PurchaseDetails> purchaseDetailsList, Context<PayState> ctx) {
purchaseDetailsList.forEach((PurchaseDetails purchaseDetails) async {
if (purchaseDetails.status == PurchaseStatus.pending) {
RestLog.logger("PurchaseStatus pending..." + ctx.state.payModel.isAvailable.toString());
_showPendingUI(ctx);
} else {
if (purchaseDetails.status == PurchaseStatus.error) {
RestLog.logger("PurchaseStatus error");
_handleError(purchaseDetails.error!, ctx);
} else if (purchaseDetails.status == PurchaseStatus.purchased || purchaseDetails.status == PurchaseStatus.restored) {
RestLog.logger("purchase successful trigger verify");
PayVerifyModel payVerifyModel =
PayVerifyModel(orderId: purchaseDetails.purchaseID, receipt: purchaseDetails.verificationData.serverVerificationData, isSandBox: true);
Pay.verifyUserPay(payVerifyModel);
}
if (purchaseDetails.pendingCompletePurchase) {
await InAppPurchase.instance.completePurchase(purchaseDetails);
}
}
});
}
问题是我不知道支付环境是哪个环境,现在我正在测试所以我通过了 isSandBox 是真的。如何从当前运行的上下文中知道 isSandBox?我应该怎么做才能让它充满活力?
【问题讨论】:
-
stackoverflow.com/questions/49707028/… 解决了您的问题吗?
-
不,我想知道 isSandBox 的状态。 @Muhtar
-
为什么不使用发布模式和调试模式?我看不到重点抱歉
-
这是苹果沙盒状态探测,有时在沙盒付费模式下也有发布模式。 @Muhtar
标签: flutter