我已将 Stripe 集成到 flutter 应用程序中,使用 flutter_stripe: ^7.0.0,在显示从卡获取交易的付款表时一切正常。现在我也想添加 Google Pay 和 Apple Pay,我已根据文档配置了所有内容,但在 Google Pay 案例中,在我的一部手机 Poco X3 NFC 中,显示了 Google Pay 按钮,但在其他手机中显示了 Google Pay按钮未显示在颤振付款表中。我什至从 Poco x3 登录了相同的谷歌帐户,其中谷歌支付按钮在其他设备中可见,而谷歌支付按钮不可见,但问题仍然存在。
注意:我正在将这些功能集成到仅在挪威可用的应用程序之一中,这意味着 Google Pay 在那里确实有支持,但我正在巴基斯坦进行开发,在那里 Google Pay 服务和 google pay 都不可用。但我的问题是为什么 Google Pay 甚至显示在 Poco X3 设备上。我面临的问题是什么。
PaymentSheetGooglePay googlePay = const PaymentSheetGooglePay(
merchantCountryCode: 'NO',
testEnv: true,
currencyCode: 'NOK',
);
PaymentSheetApplePay applePay = const PaymentSheetApplePay(
merchantCountryCode: 'NO',
);
await Stripe.instance.initPaymentSheet(
paymentSheetParameters: SetupPaymentSheetParameters(
paymentIntentClientSecret: paymentIntentClientSecret,
merchantDisplayName: 'ABC',
style: ThemeMode.light,
appearance: const PaymentSheetAppearance(
colors: PaymentSheetAppearanceColors(primary: AppColors.primaryColor),
),
googlePay: googlePay,
applePay: applePay,
),
);
try {
await Stripe.instance.presentPaymentSheet();
emit(StripePaymentSuccessful(stripeIntentId: stipeIntentId));
} on StripeException catch (e) {
if (e.error.code == FailureCode.Canceled) {
emit(StripePaymentCancelled(message: e.error.message!));
} else if (e.error.code == FailureCode.Failed) {
emit(StripePaymentFailed(message: e.error.message!));
} else {
emit(StripePaymentFailed(message: e.error.message!));
}
}
请注意,Google Pay 运行的先决条件之一是 Google Play 服务。您的 Poco X3 是否安装了 Google Play 服务?如果是这样,Poco X3 的版本与您的其他设备相比如何?