问题标签 [play-billing-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4443 浏览

android - Android 应用内结算:退款的应用内购买未取消

我在测试我的应用内结算时遇到了问题。
(使用 Google Play 应用内结算版本 3 API)

问题

退款的应用内购买仍然存在于购买列表中,由BillingClient.queryPurchases().

当我在一月份尝试对购买的商品进行退款时,退款的商品已从购买清单中消失。

我做了什么

  1. 购买了一些物品作为测试人员。
    (我很确定一个对话框说这是一次测试购买。)
  2. 之后在 Google Play Console 中退款。
  3. 等到他们的付款状态变成“已退款”。
  4. 清除了 Google Play 服务和 Google Play 的缓存。
  5. 在我的应用程序中检查了我的购买BillingClient.queryPurchases()提供。
  6. 等了几天。重新安装了我的应用程序。他们都没有工作。

最小校验码

我想做什么

我想取消我所有的测试购买。

有没有人有什么建议?先感谢您。

0 投票
0 回答
184 浏览

java - Play 商店结算:获取上次订阅续订日期

我目前正在尝试在我的应用程序中修复以下边缘情况,而不使用“Google Play Android Developer API”:

  1. 用户购买订阅(例如 1 月 1 日)
  2. 发生多次订阅续订
  3. 用户取消订阅(例如 3 月 15 日)
  4. 用户仍然可以访问订阅内容,直到下一个计费期(例如 3 月 1 日)

我在这样做时遇到了困难,因为每当我queryPurchases()在我的BillingClient对象上调用时,我总是得到相同的数据orderId(谷歌声明订单 ID 应该根据续订重复编号链接更改)并且purchaseTime保持不变,无论是否queryPurchases(SkuType.SUBS)在调用时订阅处于活动状态或已取消(如果我调用 . 会发生相同的行为queryPurchaseHistoryAsync()。我很想解决这个问题而不必弄乱“Google Play Android 开发人员 API”。使用它似乎有点矫枉过正,因为像获取日期这样简单的事情最后一次成功的订阅续订或成功续订的次数。

0 投票
1 回答
69 浏览

android - 如何知道它是 Play 计费库中的开发者帐户?

我使用 Play 计费库 1.0 将托管项目用于应用内计费。
管理项目是一项高级功能,并且可以使用完整功能。

我通常使用与开发者控制台相同的帐户登录手机。

在这种情况下,我无法在自己开发的应用中从 Play 商店进行应用内购买。这意味着我无法在自己开发的应用程序中使用全部功能。

仅凭它无法知道它是一个开发者帐户。

在 Play 计费库 1.0 中如何知道是开发者账号?

0 投票
2 回答
2256 浏览

android - Android 计费客户端库:如何指定开发人员有效负载(额外数据)

我正在尝试使用新的Android 计费客户端库(1.0)

以前,在尝试执行购买时,可以选择向意图添加额外数据。

但是,在使用新库时,事情已经大大简化了。但是有没有办法将开发人员的有效负载(额外的字符串)添加到购买流程中?

0 投票
1 回答
278 浏览

android - 是否需要消耗已退款的托管项目?

在我的应用程序中,我通过托管购买(只能购买一次)提供高级升级 - 而不是订阅。

重新购买购买时,用户似乎无法重新购买升级:

int billingFlowResponseCode = billingClient.launchBillingFlow(activity, flowParams);返回ITEM_ALREADY_OWNED

这里的这个问题似乎表明用户应该能够在大约 24 小时后购买该商品。然而,超过 36 小时过去了,没有运气。

我的问题是:对于已退款或取消的托管商品,我是否需要消费才能再次购买?

还是我需要等待更多时间..?

0 投票
1 回答
476 浏览

android - 知道何时取消订阅 - Play Billing 1.0

我正在使用这个 tuto 将 Play Billing Library 集成到我的应用程序中:http ://www.androidrey.com/implement-play-billing-library-in-android-application/一切都很好......好吧,不是全部。我很难知道何时取消订阅,我测试了所有方法以找到一个 resultCode 或了解此状态的东西,但是有一个我无法实现的方法。可能是这个问题吗?

类:BillingManager.java

它应该在这里调用:MyBillingUpdateListener.java

欢迎任何帮助,谢谢!

0 投票
1 回答
1429 浏览

android - 无法解析 com.android.billingclient:billing:1.0

我有类似的问题jcenter()但在我的情况下,即使我将存储库添加到构建脚本中,gradle 也无法解析计费库 v1.0 :

0 投票
1 回答
430 浏览

android - queryPurchaseHistoryAsync 返回什么?

我正在查看适用于 Android 的新计费库,似乎无法找到此方法在购买对象中返回的 json。

有人可以指点我参考吗?

0 投票
3 回答
7626 浏览

android - BillingClient 始终返回 SERVICE_DISCONNECTED

所以我有一个计费客户端,我用它来实例化

然后我打电话

无论出于何种原因,木材线上的断点总是断开连接。谁能提供我将如何做到这一点的见解或示例?

0 投票
0 回答
187 浏览

android - 为 Android 实施应用内购买真的这么复杂吗?

我即将在我正在开发的应用程序中为高级升级功能实施应用内购买 (IAP),并且我已阅读官方开发人员指南。在那里,他们提到

您可以使用 Play 计费库来简化您的开发流程,让您可以将精力集中在实现特定于您的应用的逻辑上,例如显示应用内商品和购买商品。

并参阅TrivialDrive_v2示例应用程序以获取有关如何实施应用内计费的完整培训课程。

查看示例,特别是com.example.billingmodule.billing包,“简化您的开发过程”这句话并不是首先想到的。

这真的是我们应该如何为高级升级实施应用内购买吗?似乎比应该的要复杂得多,所以我在想也许我在此过程中误解了一些东西,并且有一种更简单的方法来实现这个非常常见的功能?