前言 RevenueCat (RC) 是目前 Flutter 开发内购 (IAP) 的首选方案,它帮我们抹平了 Apple 和 Google 支付接口的巨大差异。代码集成其实很简单,最折磨人的往往是后台配置——尤其是 Google Play 那繁琐的权限、API 开关和服务账号配置。

本文将手把手带你从零开始,走通 RevenueCat 的后台配置流程,特别是那些官方文档没细说、但很容易报错的坑。

RevenueCat地址:https://app.revenuecat.com/login

第一部分:RevenueCat 核心概念 (先懂逻辑,再动手)

在配置之前,必须理解 RevenueCat 的“套娃”逻辑,否则后面会乱:

  1. Products (商品):商店里的原始商品(如 monthly_vip)。

  2. Entitlements (权益):用户买到的是什么?(如 unlock_pro_features)。这是代码判断用户是否是 VIP 的唯一依据。

  3. Offerings (套餐):把商品包装成套餐(如 Default 套餐下有月卡、年卡)。

  4. Packages (包):套餐里的具体选项(Monthly / Annual)。

逻辑链条:App 展示 Offerings -> 用户购买 Package -> 对应到商店 Product -> 激活 Entitlement -> 代码解锁功能。

第二部分:iOS (App Store) 配置

1. 创建iOS:项目 -> Apps & providers -> New App Store app

  • 路径:项目 -> Apps & providers -> New App Store app

2、生成.p8文件

第一步:登录苹果后台
  1. 打开浏览器,访问 App Store Connect 并登录。

  2. 点击图标列表中的 “用户和访问” (Users and Access)

第二步:生成密钥
  1. 在顶部导航栏,点击 “集成” (Integrations) 标签页。

  2. 在左侧菜单栏,选择 “App 内购买项目” (In-App Purchase)

    • 注意:如果没有这个选项,请选择“App Store Connect API”并在生成时选择权限。但在 RevenueCat 中,推荐使用专门的“App 内购买项目”密钥。

  3. 点击列表右上角的 “+” (加号) 按钮生成新密钥。

  4. 名称:随便填,建议填 RevenueCat 以便识别。

  5. 点击 “生成” (Generate)

第三步:下载文件 (.p8)
  1. 在刚刚生成的密钥列表里,你会看到你新建的 RevenueCat 密钥。

  2. 点击右侧的 “下载 API 密钥” (Download API Key) 链接。

  3. ⚠️ 重要警告:这个文件只能下载一次!下载后请妥善保存,不要丢失。如果不小心弄丢了,你只能撤销并重新生成一个新的。

  4. 下载下来的文件通常是以 AuthKey_ 开头,以 .p8 结尾的文件。


第四步:回到 RevenueCat 填空

回到你截图的那个 RevenueCat 页面:

  1. P8 key file from App Store Connect: 把刚才下载的 .p8 文件拖进去,或者点击上传。

  2. Key ID: 回到 App Store Connect 的那个列表页面,在刚才生成的密钥旁边有一列叫 “密钥 ID” (Key ID),复制那串字符(比如 ABC123DEFG)填入。

  3. Issuer ID: 回到 App Store Connect 的同一个页面,在标题的上方(通常在“App 内购买项目”几个字的旁边或下方),有一行长长的 UUID 字符串,写着 “Issuer ID”。复制这串字符填入。

  4. 填写完两个.p8文件后点击save changes就创建成功了

3. iOS“商品和付费墙”相关的配置

第 1 步:导入/创建商品 (Product Catalog)
  • 点击左侧菜单的 Product Catalog (或者叫 Products)。

  • 点击 + New

  • 你需要填入你在 App Store Connect 里申请的那个商品 ID。

  • 注意:这一步是告诉 RC 你有哪些货

第 2 步:创建权益 (Entitlements) —— 最重要的一步
  • 点击左侧菜单的 Entitlements (在 Product Catalog 下面或者里面找)。

  • 点击 + New

  • ID: 填 pro (或者 premium,这个字符串你会写在 Flutter 代码里)。

  • Description: 填 "Unlock all PDF features"。

  • Add Products: 把刚才第 1 步创建的商品选进去。

  • 注意:这一步是定义“买了商品后能得到什么”。

第 3 步:配置展示列表 (Offerings)
  • 点击左侧菜单的 Offerings

  • 通常默认有一个 Default,点进去。

  • Packages (比如 Monthly / Annual) 里,关联你刚才的商品。

  • 注意:这一步是决定“付费墙上显示哪几个按钮”。

第 4 步:设计付费墙 (Paywalls)
  • 做完上面三步,你才有资格点左侧的 Paywalls

  • 进去选一个你喜欢的模板,把刚才的 Offering 选上,就能看到预览图了!

第三部分:Android(Google Play)配置

步骤 1:创建 Google Cloud 服务账号 (Service Account)

RevenueCat 需要这个账号作为“替身”去谷歌后台查账。

  • 操作路径Google Cloud Console -> IAM & Admin -> Service Accounts

  • 创建一个账号,并下载 JSON 文件保存好。

步骤 2:开启 Developer API 
  • 操作路径:Google Cloud Console -> APIs & Services -> Enabled APIs -> 搜索 Google Play Android Developer API

步骤 3:Play Console 赋予“查账”权限

光有账号不行,得去 Play Console 里授权。

  • 操作路径Google Play Console -> Users and permissions -> 点击你邀请的那个服务账号 -> Account permissions 标签页。

  •  Financial data (财务数据) 下面的 View financial data勾选状态

    • 不勾选这个,RevenueCat 只能看不能操作,数据回传会失败。

步骤 4:验证凭证有效性
  • 操作路径:RevenueCat 后台 -> Project Settings -> Apps & providers -> Play Store。


第四部分:进阶避坑 —— 实时通知 (Pub/Sub)

这是你之前卡得最久的地方(那个 Topic 选不上、按钮不亮的问题),这部分写出来价值连城。

步骤 5:创建 Topic 并授权 
  • 操作路径:Google Cloud Console -> Pub/Sub -> Topics -> 点击你的 Topic 进入详情 -> Permissions 面板。

  • 点击 Edit Principals 或查看列表,重点圈出 Principals 这一栏填的是: google-play-developer-notifications@system.gserviceaccount.com

    • 重点! 很多人这里习惯性填成了自己的服务账号,错! 必须填谷歌官方的这个发信机器人邮箱,赋予它 Pub/Sub Publisher 角色。不填这个,RevenueCat 永远收不到消息。

步骤 6:Play Console 最终联调
  • 操作路径:Google Play Console -> Monetization setup -> Real-time developer notifications

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐