flutter如何集成google pay
在Flutter项目中集成Google Pay时,具体步骤是什么?需要配置哪些关键参数?有没有推荐的插件或现成的代码示例可以参考?遇到支付回调处理的问题该如何解决?
        
          2 回复
        
      
      
        在 Flutter 中集成 Google Pay(现为 Google Pay API)可以通过 google_pay 插件实现。以下是详细步骤:
1. 添加依赖
在 pubspec.yaml 中添加:
dependencies:
  google_pay: ^0.2.0
运行 flutter pub get 安装。
2. 配置 Android
- 修改 android/app/src/main/AndroidManifest.xml:<meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true" />
3. 初始化 Google Pay 按钮
在 Flutter 代码中:
import 'package:google_pay/google_pay.dart';
class PaymentPage extends StatefulWidget {
  @override
  _PaymentPageState createState() => _PaymentPageState();
}
class _PaymentPageState extends State<PaymentPage> {
  final _paymentItems = [
    PaymentItem(
      label: '总价',
      amount: '10.00',
      status: PaymentItemStatus.final_price,
    )
  ];
  void _onGooglePayResult(paymentResult) {
    debugPrint(paymentResult.toString());
    // 处理支付结果
  }
  @override
  Widget build(BuildContext context) {
    return GooglePayButton(
      paymentConfiguration: PaymentConfiguration.fromJson('{
        "provider": "google_pay",
        "data": {
          "environment": "TEST", // 测试环境,上线改为 "PRODUCTION"
          "apiVersion": 2,
          "apiVersionMinor": 0,
          "allowedPaymentMethods": [{
            "type": "CARD",
            "parameters": {
              "allowedAuthMethods": ["PAN_ONLY", "CRYPTOGRAM_3DS"],
              "allowedCardNetworks": ["VISA", "MASTERCARD"]
            }
          }]
        }
      }'),
      paymentItems: _paymentItems,
      type: GooglePayButtonType.pay,
      onPaymentResult: _onGooglePayResult,
      loadingIndicator: const CircularProgressIndicator(),
    );
  }
}
4. 注意事项
- 环境配置:确保在 Google Pay 商务平台注册应用并获取 merchantId。
- 测试:使用测试卡号在 TEST环境中验证支付流程。
- iOS:Google Pay 主要在 Android 使用,iOS 需考虑 Apple Pay。
5. 处理支付结果
在 _onGooglePayResult 中验证支付状态,并调用后端接口完成订单。
通过以上步骤,即可在 Flutter 应用中集成 Google Pay 功能。
 
        
       
             
             
            


