You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻求在Flutter应用中集成RevenueCat并对接谷歌苹果商店的教程

Flutter集成RevenueCat对接Google Play与Apple Store教程

一、前期准备

  • 注册RevenueCat账号,创建应用项目,获取项目对应的API密钥(在RevenueCat控制台「Project Settings」中查看)。
  • 在Google Play开发者后台完成应用上架配置,开通「Billing」权限,创建服务账号并下载JSON密钥,上传至RevenueCat的Google Play集成配置页。
  • 在Apple开发者后台开启应用的「In-App Purchase」和「Apple Pay」能力,在App Store Connect创建API密钥(授予In-App Purchase权限),将密钥ID、Issuer ID及密钥文件上传至RevenueCat的Apple集成配置页。

二、Flutter项目配置

  1. 添加RevenueCat Flutter依赖:
flutter pub add purchases_flutter
flutter pub get
  1. 初始化RevenueCat:
    在应用启动时完成初始化,传入API密钥和用户唯一标识(建议使用注册流程生成的稳定用户ID,如Auth系统的UID):
import 'package:flutter/material.dart';
import 'package:purchases_flutter/purchases_flutter.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  // 替换为你的RevenueCat API密钥
  const apiKey = 'revenuecat_api_key_here';
  // 替换为当前注册用户的唯一ID
  const appUserId = 'user_unique_id_from_signup';

  await Purchases.configure(PurchasesConfiguration(apiKey)..appUserID = appUserId);
  runApp(const MyApp());
}

三、双平台原生配置

Android平台

  1. 打开android/app/build.gradle,确保minSdkVersion不低于21:
android {
    defaultConfig {
        minSdkVersion 21
        // 其他配置...
    }
}
  1. 确保AndroidManifest.xml中包含网络权限:
<uses-permission android:name="android.permission.INTERNET" />

iOS平台

  1. 打开ios/Runner.xcworkspace,在Xcode中设置应用的Deployment Target不低于13.0。
  2. 开启Capabilities:在「Signing & Capabilities」中添加「In-App Purchase」和「Apple Pay」(若支持Apple Pay)。
  3. 在Info.plist中添加必要的描述(如需Apple Pay):
<key>NSApplePayUsageDescription</key>
<string>用于录入支付方式,方便后续购买服务</string>

四、注册流程中集成支付方式录入

在注册页面完成用户信息提交后,触发PaymentSheet收集支付方式:

Future<void> showPaymentSheetForSignup() async {
  try {
    // 加载PaymentSheet配置
    final paymentSheetConfig = PaymentSheetConfiguration(
      merchantDisplayName: '你的应用名称',
      // 若需关联特定付费产品,可添加productIdentifiers列表
      // productIdentifiers: ['com.yourapp.premium_subscription'],
    );
    await Purchases.loadPaymentSheet(paymentSheetConfiguration: paymentSheetConfig);
    
    // 弹出PaymentSheet让用户录入支付方式
    await Purchases.presentPaymentSheet();
    
    // 成功后,支付方式已关联至当前用户
    print('支付方式录入完成');
    // 继续后续注册流程或跳转首页
  } catch (e) {
    // 处理错误场景:用户取消、支付方式无效等
    print('支付方式录入失败: ${e.toString()}');
  }
}

五、测试与验证

  • Android测试:使用Google Play测试账号,将应用上传至测试轨道,测试PaymentSheet弹出、支付方式录入流程,在RevenueCat控制台查看用户的支付方式记录。
  • iOS测试:使用App Store Sandbox测试账号,在Xcode中运行应用,验证PaymentSheet功能,确认RevenueCat控制台能正常同步用户支付信息。

内容的提问来源于stack exchange,提问作者LostTexan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 19:43:27