flutter如何配置google pay
在Flutter项目中如何正确配置Google Pay支付功能?我已经按照官方文档添加了依赖和基本设置,但在运行时仍然遇到"Google Play services are updating"的错误。请问具体的配置步骤是什么?是否需要额外配置AndroidManifest.xml文件或添加其他权限?测试时需要注意哪些关键点才能确保支付功能正常运作?
2 回复
在 Flutter 中配置 Google Pay 主要依赖 google_pay 插件。步骤如下:
-
添加依赖:在
pubspec.yaml中添加:dependencies: google_pay: ^4.0.0 -
配置 Android:
- 在
AndroidManifest.xml中添加元数据:
<meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true" />- 确保应用满足 Google Pay 要求(如 HTTPS、合法业务)。
- 在
-
初始化支付:
import 'package:google_pay/google_pay.dart'; void initGooglePay() { GooglePay.init( environment: Environment.Test, // 测试环境 merchantName: '你的商户名', paymentProfile: PaymentProfile.PaymentGateway, // 根据支付网关调整 ); } -
发起支付请求:
final paymentData = await GooglePay.makePayment( price: '10.00', currencyCode: 'USD', ); -
处理回调:通过
paymentData获取支付结果并验证。
注意:需在 Google Pay Business Console 注册商户并获取配置参数。
更多关于flutter如何配置google pay的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
在Flutter中配置Google Pay主要使用google_pay插件,以下是详细步骤:
1. 添加依赖
在pubspec.yaml中添加:
dependencies:
google_pay: ^2.0.0
运行 flutter pub get
2. 配置Android
- 在
android/app/src/main/AndroidManifest.xml中添加网络权限:
<uses-permission android:name="android.permission.INTERNET"/>
- 确保
android/app/build.gradle中:minSdkVersion ≥ 19compileSdkVersion ≥ 28
3. 基本使用代码
import 'package:google_pay/google_pay.dart';
class GooglePayButton extends StatelessWidget {
void _onPressed() async {
final paymentData = await GooglePay.makePaymentRequest(
GooglePayPaymentRequest(
price: '10.00',
currencyCode: 'USD',
),
);
// 处理支付结果
print(paymentData);
}
@override
Widget build(BuildContext context) {
return GooglePayButton(
onPressed: _onPressed,
);
}
}
4. 重要配置项
- 环境配置:测试时使用
.test环境
GooglePayPaymentRequest(
environment: GooglePayEnvironment.test,
// 其他参数...
)
- 商家信息:
merchantName: 'Your Store Name',
merchantId: '你的商家ID', // 从Google商家中心获取
5. 注意事项
- 需要Google Play服务支持
- 在Google Pay Business Console注册商家账号
- 测试时使用Google提供的测试卡号
- 确保应用签名一致
6. 错误处理
try {
final result = await GooglePay.makePaymentRequest(request);
} catch (e) {
print('支付失败: $e');
}
完成以上配置后,Google Pay按钮就能正常显示和处理支付请求了。记得在实际发布前切换到生产环境并完成所有商家验证流程。

