问题标签 [billing]

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 投票
1 回答
4739 浏览

android - 从未调用 Google InAppBilling onPurchaseStateChange

回调方法onPurchaseStateChange永远不会被调用。我做了自己的演示应用程序,还尝试使用谷歌提供的演示(地下城)。

requestPurchase(String productId, String payload)onClick方法调用。

回调方法onRequestPurchaseResponse(Request, ResponseCode)被调用。这里responseCode给出了值RESULT_OK。所以请求已经发送到服务器。

此方法的 javadoc 说明

当我们收到来自 Market 的针对我们发出的 RequestPurchase 请求的响应代码时,就会调用此方法。这不用于任何购买状态更改。在 onPurchaseStateChange(PurchaseState, String, int, long) 中接收所有购买状态更改。这用于报告各种错误,或者如果用户退出并且没有购买该项目。可能的响应代码有: RESULT_OK 表示订单已成功发送到服务器。当订单被收取或取消时,onPurchaseStateChange() 将在稍后被调用(购买状态为 PURCHASED 或 CANCELED)。如果市场管理项目的订单已经发送到服务器,也会发生此响应代码。RESULT_USER_CANCELED 表示用户没有购买该商品。RESULT_SERVICE_UNAVAILABLE 意味着我们不能 t 连接到 Android Market 服务器(例如,如果数据连接断开)。RESULT_BILLING_UNAVAILABLE 表示尚不支持应用内计费。RESULT_ITEM_UNAVAILABLE 表示此应用出售的商品在服务器端目录中不存在(或未发布)。RESULT_ERROR 用于任何其他错误(例如服务器错误)。

但是回调方法

永远不会被调用。

我错过了什么吗?在地下城(Google 提供的演示)中正在做同样的事情,并且onPurchaseStateChange没有调用。

Test-InAppBilling文档显示我们必须能够达到已购买状态。但是当我尝试时,我只看到

android.test.purchased:发送购买请求。

0 投票
2 回答
872 浏览

android - Android 应用内结算一般问题

我知道应用内计费是 Android 中的新功能,我想使用它,但版本要求让我三思而后行是否值得。我将不胜感激那些详细实施或使用 In App Billing 的人提供的任何意见。

  1. 我还有 10% 的 1.5 个用户。应用内计费需要至少 1.6 才能工作。这是否意味着 1.5 个用户会立即崩溃?如果没有,它在什么时候失败?我不想编写一堆 hacky 代码来保持与 1.5 用户的兼容性。
  2. 如果用户重新安装应用程序,是否会记住他们购买的应用程序?
  3. 如果您没有所需的市场版本,它会在什么时候失败?

谢谢。

0 投票
2 回答
652 浏览

android - 在android中的应用计费

我正在使用以下代码:

我还添加了,IMarketBillingService.aidl但它仍然显示如下:

无法绑定到 MarketBillingService

你能指出我的错误吗?

0 投票
1 回答
1271 浏览

billing - Kannel 的开源计费解决方案

我想为 Kannel 建立一个计费系统 - 可以跟踪基于 Kannel 的 SMS 网关的每个用户的使用情况并相应地计费。

我想知道,是否有任何通用的开源计费解决方案可以集成到 Kannel 中,而不是从头开始构建?

它应该很容易扩展,所以我可以介绍我自己的报告和其他接口。此外,可扩展性要求很高,因为它需要处理大量(可能是数千条短信/秒),但计费不一定是实时的。

0 投票
1 回答
791 浏览

android - Android In-app billing to unlock digital content, but how

I'm trying to get androids new In-APP Billing to work with unlockable content. For example, the user can unlock special content for a limited time. The content comes from a web service, the problem I have is, how do I know when the user can view the content?

Because the user can buy it multiple times I use the items unmanaged. So I somehow have to store the users information in my service, so I can provide content when he is allowed to.

The problem is that I don't have any information about the user, no ID, only a orderid which is not remembered by google. So if he changes phone or wipes the database the access is lost.

What is the best possible way ensure the user has access to the content?

0 投票
1 回答
1319 浏览

google-app-engine - Channel API 的计费是如何完成的?

我选择了 google-app-engine 是因为它的可扩展性,现在我试着了解一旦我发布产品我需要支付多少费用。

我在谷歌应用引擎文档中来回查看以找到问题的答案但找不到。我在“配额”页面中发现了一些细节,我发现我可以免费获得多少以及计费默认配额是多少。

计费页面中,有 CPU 等的编号,包括资源和单元以及它的成本。但是我在哪里找不到每个频道调用/创建的费用等。

我什至无法尝试使用管理控制台中的内容进行计算,因为现在那里的当前数字是 0(因为有 2 个用户是程序员)。

我怎样才能为发布(希望)每天创建大量频道的产品做好准备?

是否有我错过的页面,或者有计算工具?

谢谢!

编辑: Moishe,感谢您提供快速易读的答案。所以这里还有一些问题: 1. 你认为——如果需要的话——我将能够获得更多频道数量的配额吗?我看到有一个特殊的表格要求更多的配额,但我不确定它是否包含 Channel-API 功能...... 2. 你有没有关于“如何有效地使用 channel-API”的帖子?我看到了一些关于每个用户重用令牌的东西。还有更多吗?

再次感谢。

0 投票
1 回答
2597 浏览

java - InAppBilling 活动和完成()

我在集成谷歌的应用内计费时遇到了很多麻烦。

我有一个应该进行应用内计费的活动。我正在使用 startActivity 方法从我的主要活动中调用此活动。

mBillingService.requestPurchase("android.test.purchased", "10") 并在 In-App-Billing 活动中调用onCreate 方法。

由于 In-App-Billing 对服务器进行异步调用,我应该何时调用 finish() 以返回主要活动。但我不希望活动结束,我仍然需要异步调用的结果。那么我该如何处理呢。

在将请求发送到服务器后,我调用了 finish()。但后来我得到了这个例外:

它没有退出应用程序,但它停止了 InAppBillingActivity。

非常感谢任何帮助。

谢谢,阿卡什

PS:我的老问题,仍然没有解决......

0 投票
4 回答
14840 浏览

android - Android 应用内计费项目价格

在实际显示应用内购买的 android 市场前端之前,如何检索应用内计费项目的价格?目前,用户似乎只能在购买对话框中找到应用内商品的价格,我想避免将所有支持货币的价格存储在应用程序中。

0 投票
1 回答
2891 浏览

android - Android In-App Billing:购买后收到空白数据

我正在尝试实施应用内计费。我登录了一个在 Market 注册的测试帐户,并且我在代码中更新了我的公钥。我可以购买其中一个测试产品 ID。

但是,似乎在 PURCHASE_STATE_CHANGED 意图中发送了一个空白签名。日志显示如下:

“购买未验证”是由于代码跳过了签名验证(因为它是空白的)并丢弃了该产品购买。

任何想法?我在文档中没有看到签名可能为空白或原因是什么。

FWIW,这只发生在我的 Samsung Vibrant Galaxy S (2.2.1) 上。它在 Droid (2.2.2) 上运行良好。

编辑:当我得到 PURCHASE_STATE_CHANGED Intent 作为恢复事务操作的结果时,我在日志中得到了这个:

这表明根本没有发送签名的有效载荷。

编辑:在进一步的测试中,当上传的应用程序和安装的应用程序的版本不同时,似乎会发生这种情况。http://code.google.com/p/marketbilling/issues/detail?id=15

0 投票
2 回答
11358 浏览

android - 如何检查用户是否在android上付款?

我想在我的 android 应用程序中使用应用内计费(而不是创建 2 个版本的应用程序 - 免费和专业版)。如果用户付费,那么首选项中的其他选项应该可用。我的应用程序与网站(不是我的)同步数据。每次同步发生时,我想检查用户是否付费。我该怎么做?