Connect with Google 与谷歌联系

与谷歌联系

将 Fovea 与 Google Play Developer API 连接将启用有用的功能:
  • 即使应用程序未启动,也能检测订阅续订。
  • 获取有关购买 的更多信息:
    • 有交易被取消
    • 订阅的到期日期是什么时候
    • 是否处于宽限期或账户持有期(等待更新付款方式)。
  • 增强的安全性:
    • 从 Google API 获取的数据比客户端发送的数据更可信
阅读更多

1.启用Play Developer API

为了让我们的服务器代表您与 Google 通信,您需要提供一组服务凭证。
首先,您的 Play Developer 帐户需要关联到 Google Developer Project。从那里将创建一个服务帐户并向其授予财务权限。最后,我们将在 Fovea.Billing 中设置服务帐户凭据。
这需要几个步骤(准备大约 10-15 分钟),但这是值得的!

1.1 创建服务账号

  1. 首先,让我们转到您的Google Play 管理中心
  2. 选择所有应用>设置>开发者帐户API 访问。
    Connect with Google  与谷歌联系
  3. 从入门部分,点击链接以连接Google 开发者项目。(如果没有列出,则创建一个新项目……)
    Connect with Google  与谷歌联系
  4. 在同一API 访问屏幕中,选择创建服务帐户。
    Connect with Google  与谷歌联系
  5. 您会看到一个指向Google API 控制台的链接,请点击它。
  6. 从那里,+ 创建服务帐户。
    Connect with Google  与谷歌联系
  7. 填写表格(将名称和描述设置为适合您的任何内容)
    • 选择角色:项目>所有者
    • 然后点击继续
  8. 创建密钥> 格式化JSON
    Connect with Google  与谷歌联系
    Connect with Google  与谷歌联系
     
      • 这将在您的计算机上下载一个 JSON 文件。保持安全。
  9. 单击完成完成。

1.2 设置账号权限

您现在可以关闭Developer Console并返回Play Console
  1. 单击新创建的服务帐户旁边的授予访问权限按钮。
  2. 将 Role 设置为Finance,添加Manage orders权限这应该是这样的:
    Connect with Google  与谷歌联系
  3. 节省

1.3 将凭据保存在您的 Fovea 帐户中

返回到您的Fovea.Billing 帐户,将 JSON 文档的内容复制粘贴到Google Play Service Account字段并保存
Connect with Google  与谷歌联系
重要的! 您的 Play 服务凭证最多可能需要 24 小时才能与 Android Developer API 一起正常工作。 有一个技巧可以强制刷新谷歌的访问权限。在 Google Play 控制台中创建一个新的虚拟应用内产品,您可以稍后将其删除。

2. 为您的应用启用实时开发者通知

为了防止在检测续订、取消或订阅和购买状态的其他潜在变化时出现任何延迟,Google 提供了服务器到服务器的通知机制。我们将通过几个步骤来设置它。 快速解释:
  • Pub/Sub API 是 Google Cloud 的一项服务,可让应用程序相互发送消息。Google Play 使用它来发送实时通知。
  • 在这个 API 中:
    • 主题是消息和权限的集合。一些用户可以向主题发布消息,一些用户只允许阅读消息。
    • 订阅可以访问主题。一种称为“推送”订阅的订阅类型将在发布消息时调用 webhook。
  • 在我们的上下文中,消息将是与购买相关的事件。
我们现在将:
    • 为您的项目启用 API
    • 创建一个主题,“Google Play”可以在其中发布消息。
    • 创建调用 Fovea 专用端点的订阅。
    • 告诉“Google Play”要为您的应用发布什么主题。

2.1. 启用发布/订阅 API

您必须拥有一个启用了 Cloud Pub/Sub API 的 Google Cloud 项目。
  1. 单击此处从 Google Cloud Console 启用 Pub/Sub API。
    • 单击“设置项目”。
    • 选择您之前创建的项目(创建服务帐户,项目符号 3)。 如果您没有更改默认设置,它会被称为“ Google Play Android Developer ”
    • 单击启用按钮。

2.2. 设置主题

从 Google Cloud 控制台,使用您选择的 ID创建主题(链接: https ://console.cloud.google.com/cloudpubsub/topicList )
  • 确保选择了正确的项目
    Connect with Google  与谷歌联系
  • 单击创建主题
    Connect with Google  与谷歌联系
  • 您可以取消选中“使用客户管理的加密密钥 (CMEK)”
    Connect with Google  与谷歌联系
授予 Google Play 向该主题发送消息的权限:
  1. 选择刚刚创建的主题
  2. 打开“权限”选项卡
  3. 点击“添加成员”。
    Connect with Google  与谷歌联系
  4. 然后用这些值填写表格:
    • 成员:google-play-developer-notifications@system.gserviceaccount.com
    • 角色:发布/订阅发布者
      Connect with Google  与谷歌联系
  5. 节省

2.3. 创建订阅

然后我们将向该主题添加订阅。
  1. 从主题页面,打开新创建主题的上下文菜单,然后选择“创建订阅”。
    Connect with Google  与谷歌联系
  2. 填写详细信息。
    • 订阅 ID由您决定。
    • 交付类型推送
    • 端点 URL从您的Fovea 设置中检索。
      Connect with Google  与谷歌联系
    • 过期永不过期
    • 重试策略指数退避延迟后重试
      • 最小值:10
      • 最大值:600
    • 这看起来像这样:
      Connect with Google  与谷歌联系
      Connect with Google  与谷歌联系
  3. 单击创建以确认。

2.4. 与谷歌播放链接

我们现在会将此订阅链接到 Google Play。
    1. 打开Google Play 控制台
    2. 选择您的应用。
    3. 转到货币化 > 货币化设置(它位于侧边栏菜单的最底部)。
      Connect with Google  与谷歌联系
    4. 找到实时开发者通知部分。在主题名称字段中,输入您之前配置的完整 Cloud Pub/Sub 主题名称。主题名称应采用以下格式,其中projects/{project_id}/topics/{topic_name}project_id您项目的唯一标识符,并且topic_name是之前创建的主题的名称。
  1. 2.5 测试

    1. 单击发送测试通知以发送测试消息。执行测试发布有助于确保一切设置和配置正确。如果测试发布成功,将显示一条消息,说明测试发布成功。在 Fovea 的仪表板中,您应该看到已收到一个新事件:
      Connect with Google  与谷歌联系
    2. 如果发布失败,则会显示错误。确保主题名称正确,并且google-play-developer-notifications@google-play-developer-notifications@system.gserviceaccount.com服务帐户具有对该主题的Pub/Sub Publisher访问权限。
都好?单击更新主题,我们就完成了!有关实时开发者通知的更多详细信息,请参见此处:developer.android.com

3.定价

来自 Google 的有关 Google Cloud Pub/Sub 定价的快速说明: 消息摄取和传递按日历月内传输的数据量定价。前 10 GB 的使用量是免费的。之后,摄取或传递消息的价格为每 TiB 40 美元。
Google Play 发送的消息约为 1kB,免费计划包括每月约 10,000,000 条此类消息,其中大部分在您收到付款时发送。当你达到那个阶段时,每月 40 美元不是问题。 参考:https ://cloud.google.com/pubsub/pricing

4. 故障排除

错误:
用于调用 Google Play Developer API 的项目 ID 尚未在 Google Play Developer Console 中链接
有时,Google 不会应用您对帐户权限所做的更改… 可能的解决方案:
  • 在您的应用中创建一个应用内产品,您可以在之后立即将其删除。