前言
希望这可以帮助一些人在混合应用程序中使用计费选项。其目的是概述混合应用程序中 Google Play 订阅的设置、实施和测试。这里没有隐藏的营销议程,我解决问题,这就是我解决这个问题的方式。
内容
1.0 Play 商店和开发者控制台
2.0 免费试用如何实际运作?
3.0 订阅和认证
4.0 设置和实施
4.1 安装我的电容器插件(NPM 即将推出)
5.0 测试
6.0 资源
1.0 Play 商店和开发者控制台
Play 商店的大部分内容都是不言自明的,但是在发布应用程序时我想指出一些关键的事情。
-
Price
订阅套餐确实NOT
包括当地国家税。 - Play 商店的“应用程序定价”部分是设置默认一次性价格的地方。
FREE
如果使用订阅,则必须设置为。(我知道的可怕一点) - 将您的应用程序设置为
FREE
无法撤消。所以请绝对确定这是您希望您的应用程序失败的路线。 - 一个潜在的明显但仍然 - 订阅
require
android 计费库的安装。 - 如果安装了 android 计费库并且应用程序尚未设置为免费,则用户必须支付初始价格来下载应用程序,然后支付订阅价格才能访问应用程序的锁定功能。
- 您可以混合和匹配默认定价 + 订阅,以处理您的应用可能需要的各种情况。这只是你如何处理应用程序内部逻辑的一个例子。
- 关于税收和合规性的警告。我建议您通读此Google Answer以了解您必须回答的一些合规问题。几个大的将是:
- 您的应用是流媒体服务吗?(如果分布在美国)
- 您的应用是服务还是数字内容?(如果分布在欧洲经济区
EEA
)
- 后台读取和生命周期事件
2.0 免费试用实际上是如何工作的?
您可能希望为您的应用程序添加免费试用版。Play商店中需要一些配置,在该Products
部分中,但这是直截了当的。
- 如果您有一个产品的免费试用设置,那么用户必须首先“购买”该应用程序。此“购买”收费为 0.00 美元,允许用户进入订阅的免费试用阶段。然后,在免费试用结束时,会自动向用户收取订阅费用。
- 在免费试用期结束前取消订阅的用户不会被收取任何费用。
- 由于信用卡到期等原因,用户可能会遇到计费问题。在锁定应用程序的功能/部分时,请记住这一点。您还需要考虑如何最好地向您的用户展示存在计费问题的事实。
3.0 订阅和认证
这是来自 Google 文档的友好说明,以及在考虑 Android 应用程序的支付集成时的几个关键点。
作为将 Google Play 计费系统集成到您的应用程序的一部分,我们强烈建议您使用安全的后端服务器来执行与计费相关的任务,例如购买验证、订阅特定功能和处理实时开发者通知。
- 为了保护您的应用程序和您的应用商店数据,强烈建议使用购买验证服务器。现在,如果您只是在测试,那么您不需要一个,并且以这种方式测试连接/功能很好,请注意它很可能需要更改。
这就是Qonversion的用武之地,他们免费提供此购买身份验证服务器。还有更多好消息,Qonverion 不仅覆盖了服务器端,而且还提供了各种连接到服务器的 SDK 和插件。
有一些解决方案可以提供类似/相同的服务,您甚至可以自己创建购买验证服务器,但您知道它是免费的。 - 在撰写本文时,目前无法从 Play 商店中删除订阅。它们可以被激活/停用,只需确保在测试时将功能的锁定/解锁设置为其相应的订阅。
4.0 设置和实施
这是我们讨论有趣的东西的地方,希望我已经做了足够好的解释它。Qonversion 概述
- 设置 Qonversion 和 Developer Play Store 之间的连接。Qonversion 写了一个很好的指南。
- 请记住,建立连接和从 Google 获取产品/订阅可能需要几天时间。
- 您需要在管理 Qonversion 门户中设置产品、产品和权限。保持所有东西的名称相同将为您节省很多麻烦。您想
Product ID
在 Developer Play Console 中查看,而不是名称。 - 建立连接后,您可以将 Qonversion SDK 安装到您的应用程序中。这是根据平台/代码库而有所不同的地方。安装 SDK是你需要去安装一堆 Android / iOS / React Native 等的地方。但是,如果你想要 CapacitorJS,请继续阅读。
我一直在向 Qonversion 提出关于他们公开可用的代码库的问题,直到我能够加深理解并为 CapacitorJS 创建我自己的插件,它允许开发人员安装 Android 计费库并为他们的混合应用程序创建订阅。Qonversion 也为 Cordova 提供了这个功能。该代码是公开的,可在:Capacitor Plugin Qonversion Code 获得。有一些更新是必需的,我正在与 Qonversion 团队合作,以改进基于 Android 计费库版本的可用产品/版本。完成这些更新后,我将能够将其作为 npm 包提交给 CapacitorJS,以便更好地使用。
4.1 安装我的电容器插件(NPM 即将推出)
当我使用这些术语时locked
,unlocked
我的意思是分别拒绝/允许访问应用程序功能。
- 将 repo 复制到 Capacitor 项目的根目录中,使其看起来像:
/capacitor-plugin-qonversion
.- 更新里面的依赖
package.json
=>"capacitor-plugin-qonversion": "file:capacitor-plugin-qonversion",
- 然后你可以运行
npm i
- 更新里面的依赖
- 在文件中导入和使用,所有公共方法都在 repo 中描述。
```
import { QonversionPlugin } from 'capacitor-plugin-qonversion';
QonversionPlugin.launchWithKey({
key: process.env.VUE_APP_QONVERSION_KEY,
observerMode: false,
}).then((response) => {
console.log('actionBillingInitialise SUCCESS:::', JSON.stringify(response));
}).catch((error) => {
console.log('actionBillingInitialise ERROR:::', error);
});
```
那你就可以走了。一旦连接并按launchWithKey
预期工作,您就可以获取产品、产品、订阅状态、免费试用状态并进行购买。从这里您可以根据这些调用返回的内容锁定/解锁功能。一般流程如下,按顺序:
注意:最好在默认情况下锁定功能,然后unlock
在进行适当的调用/检查后更新。
-
在应用程序加载时,初始化计费
launchWithKey
-
在应用程序加载时,获取
offerings
成功后的launchWithKey
-
在应用加载时,检查用户的订阅状态
checkPermissions
。 -
在
checkPermissions
通话中 - 如果没有返回任何产品,则用户未订阅,那么您可以锁定应用程序的相应功能并提供付费专区。 -
在
checkPermissions
通话中 - 如果产品确实被退回,那么您可以unlock
使用基于renew_state
and的功能isActive
。的当前选项renew_state
如下(在撰写本文时)。locked
在考虑特征是否应该是或时,需要考虑这些状态中的每一个unlocked
。- 将续约
- 不可再生
- 计费问题
- 取消
-
创建付费墙(基本上是一个弹出窗口,向用户显示订阅并且他们必须付费才能访问此功能/内容谷歌文档)
-
创建一个地方来展示用户订阅状态以及他们可以在需要时更新它们的位置。(通常在设置中的某个地方)
-
还可以向用户显示祝酒词或小弹出消息,以显示他们在免费试用中还剩多长时间。
-
如果用户仍处于免费试用期,则可以向用户展示付费专区的变化,要求他们购买订阅 - 而不是等待免费试用结束。
向用户展示或不展示诸如付费墙之类的东西有多种情况和原因。在这个阶段,一切都是关于如何最好地提高转化率,从而提高收入。
5.0 测试
关于测试的一些注意事项以及如何处理它的想法。
- (在撰写本文时,可能会进行更新)在 Developer Play Console 中设置多个订阅非常重要。这是因为即使在测试中,免费试用也是一次性的,一旦获得免费试用就无法重置,即使使用开发人员/测试帐户也是如此。因此,必须设置多个订阅以进行多次测试,以确保您的应用程序中的 Android 计费库的实现涵盖所有必需的用例。诸如仅将路线和功能锁定给免费试用的路线和功能以及从免费试用到付费订阅的过渡如何工作或计费问题之类的事情不胜枚举。
- 将测试帐户添加到您的 Developer Play Console,以便您可以通过 Android 模拟器运行测试。一旦用户接受成为测试员,他们将获得测试卡(来自 Google),可以模拟购买的成功/失败。这些测试帐户还将显示减少的免费试用时间,因此您无需等待一周即可查看免费试用转换为付费试用时会发生什么。例如,7 天免费试用相当于 5 分钟免费试用。
- 如果您已经在没有计费的情况下启动了您的应用程序 - 这很好,只需安装您需要的所有内容并配置您需要的所有内容。但是,您需要考虑用户是否支付了我们之前谈到的默认一次性付款。因此,您需要查看一次性付款,而不是查看应用程序支付逻辑中的订阅。
6.0 资源
- 创建您自己的购买认证服务器
- 订阅 + 付费专区指南
- 我的电容器插件 Qonversion 代码
- Qonversion 文档
- 转换
- Android 后台读取和生命周期事件
- 谷歌答案 - 税
- 我的现场扑克 | 混合安卓应用
网友评论