【发布时间】:2021-02-02 10:45:07
【问题描述】:
我第一次尝试实现订阅。我正在使用 BillingClient v3.0.1。这是合同,所以我不是 Google Play 帐户的所有者。帐户所有者已为帐户设置财务并已配置 API。我在 Google Play 控制台中创建了订阅产品,通过 Gradle 和 com.android.vending.BILLING 在清单中添加了计费库,并在封闭 Alpha 轨道上发布了一个构建以供内部测试。
我成功初始化计费客户端
billingClient = BillingClient.newBuilder(mContext)
.enablePendingPurchases()
.setListener(this)
.build();
billingClient.startConnection(new BillingClientStateListener() {
@Override public void onBillingSetupFinished(@NonNull BillingResult billingResult) {
...
}
@Override public void onBillingServiceDisconnected() {
...
}
});
一切正常,我检索产品列表
SkuDetailsParams params = SkuDetailsParams.newBuilder()
.setSkusList(skuList)
.setType(BillingClient.SkuType.SUBS)
.build();
billingClient.querySkuDetailsAsync(params, new SkuDetailsResponseListener() {
@Override public void onSkuDetailsResponse(@NonNull BillingResult billingResult, @Nullable List<SkuDetails> list) {
...
});
这也是成功的,但是当我尝试在真实设备上购买产品时,使用的版本与 Alpha 测试轨道版本运行相同的版本代码:
BillingFlowParams billingFlowParams = BillingFlowParams.newBuilder()
.setSkuDetails(product)
.build();
BillingResult billingResult = billingClient.launchBillingFlow(mContext, billingFlowParams);
弹窗显示“找不到您尝试购买的商品”的错误。
我已经完成了我能找到的所有事情(缺少收据验证,这将在我实际完成购买之后进行),但我卡住了。
有什么建议/想法吗?
谢谢 斯蒂芬
【问题讨论】:
标签: android in-app-billing subscription