Android:如何使用inapp结算更新Android应用?

时间:2011-11-11 20:14:05

标签: android in-app-purchase google-play in-app-billing

提出问题的另一种方式:如何使用我的应用的所有版本进行inapp结算?

我有一个带有inapp结算的应用。我想更新它。

我在开发者控制台上的主动apk是版本1.我的问题如下:

  • 当我使用adb在我的设备上的版本2中安装更新的应用程序(签名包)时,我收到以下消息:“此版本的应用程序包未配置为市场结算”
  • 当我在我的设备上安装我的更新的应用程序(总是签名包)版本1(与控制台上的版本相同)时(我在控制台上无法做到的...我必须增加版本号!)使用adb,非常有用......

因此,似乎inapp计费仅适用于应用程序的一个版本:在控制台中处于活动状态的应用程序。我想我的用户会遇到同样的问题:只有拥有该应用上次更新的用户才能执行inapp结算...其他用户将收到错误。

有谁知道如何解决这个问题?我怎么能这样做,即世界上已经安装的所有应用程序都可以进行inapp计费,无论版本号是什么?

谢谢!!!

3 个答案:

答案 0 :(得分:6)

“控制台”是指您的出版商的帐户吗?

我认为这不是一个错误,而是一个设计特征。如果您尝试购买拥有4个android.test.*项ID,之一,则它正在运行调试版本甚至是发布版本较新比您发布的更新,您将收到此错误:

enter image description here

例如,如果您在设备上运行发布模式,该模式比市场中的版本高一个版本,则您尝试购买真实版本项目(不是android.test.*项目),您将收到上述错误。

进一步澄清:如果您运行的应用程序版本比AndroidMarket中的版本更高(当然具有相同的软件包名称),那么 将成功“进行购买”使用4个android.test.*项ID中的一个。

请注意,这是基于我自己的经验和观察,因为有关这方面的完整文档还有待提供。

答案 1 :(得分:0)

我遇到这个错误。解决方案:请上传sign apk并使用您的产品ID进行测试:com.test.purchased并设置为应用内商品。 (1)使用带标志apk的导出在您的手机上运行。 (2)如果发生错误,则等待1-2个小时,因为谷歌有时会迟到。

答案 2 :(得分:0)

以下是我在使用In-App-Billing时观察到的内容。

  • 当您上传发布版apk(无论Alpha / Beta / Production)时,IAB将无法正常工作,您必须等待几个小时才能正常工作

  • 上传新版本的apk(更高版本)也是一样的。你将不得不等待几个小时才能最终发挥作用。使用IAB的旧版本仍然可以使用。我通常做的是上传我的发布apk作为Beta,等待几个小时,然后当它已经工作时,将apk推广到生产。