Android 应用程序错误:此版本的应用程序未配置为用于市场计费

Android 应用程序错误:此版本的应用程序未配置为用于市场计费,android,in-app-purchase,google-play,Android,In App Purchase,Google Play,几天后,就可以在Android应用程序中使用应用内计费了。当然很酷。因此,我开始为我的应用程序进行更新,以实现这一点。但是现在我遇到了一些问题。这就是我所做的: 我首先尝试了在应用程序中测试静态的保留产品ID 账单回复。这是没有问题的 我向市场上传了一份APK草案(带有生产签名,没有调试签名),其中包括com.android.vending.BILLING权限 当我这样做的时候,我可以在市场上为我的应用添加“应用内产品”,并将其状态设置为“已发布” 我创建了一个测试用户并重置了我的设备,以使该

几天后,就可以在Android应用程序中使用应用内计费了。当然很酷。因此,我开始为我的应用程序进行更新,以实现这一点。但是现在我遇到了一些问题。这就是我所做的:

  • 我首先尝试了在应用程序中测试静态的保留产品ID 账单回复。这是没有问题的
  • 我向市场上传了一份APK草案(带有生产签名,没有调试签名),其中包括com.android.vending.BILLING权限
  • 当我这样做的时候,我可以在市场上为我的应用添加“应用内产品”,并将其状态设置为“已发布”
  • 我创建了一个测试用户并重置了我的设备,以使该测试用户成为我的测试设备上的主帐户
  • 保留的产品id仍然有效
现在问题来了。当我使用自己的产品ID(我之前添加的产品ID,见上文)时,将显示一个对话框,其中包含以下文本:

应用程序错误:此版本的应用程序未配置为用于市场计费。有关详细信息,请查看帮助中心。


我在日志里找不到什么奇怪的东西。有人知道我做错了什么吗

我刚刚遇到了这个问题,并意识到这是因为我运行的是一个未签名的调试版本的应用程序。在Eclipse中,当我导出并签署我的应用程序并将其安装到手机上时,我就能够使用我的应用程序内产品而不会看到此错误消息

我也遇到了这个问题。我终于意识到,我发布的应用程序的版本代码为3,我的草稿(具有计费权限的未发布apk)的版本代码为4,我用来测试应用内计费的已签名apk仍然是版本代码3。一旦我将版本代码更改为4,我就能够进入我请求购买的实际应用程序内产品页面。

当作为草稿上载的apk与您系统上在测试模式下运行的apk不匹配时,这可能发生在已签名、已发布的版本上。只要确保您的构建匹配,您在测试模式下应该是正常的,并且将停止看到错误


这里最大的担忧是,我们会在生产中看到同样的行为,即,我们发布了1.0.0-1和应用内计费,然后我们发布了1.0.0-2,运行1.0.0-1的用户将无法购买或恢复其购买,并将收到相同的错误(非常糟糕的用户体验)。一直在搜索文档,寻找这种特定于测试模式的行为,但到目前为止运气不佳;我们在这里添加了一个bug:

我的解决方案是,我需要在市场和测试中使用相同的密钥来签署apk。所以,我不只是运行应用程序,每次更新都必须导出已签名的APK,使用APK命令行命令卸载并在设备中重新安装它。原则上,您也可以使用自己的密钥库作为调试密钥库,但这需要使用特定的硬编码密码和密钥名称。

我发现,一旦我将我的APK的新副本上载到市场上,在接下来的一个小时左右的过程中,我会遇到“应用程序错误”。在至少一个小时过去之后(有时需要两个小时过去),我就不会再犯这个错误了,然后我就可以毫无问题地购买我的物品了。谷歌服务器似乎至少需要一个小时来处理您上传了一个新APK的事实(关于APK的InApp计费方面)


所以我的建议是你在上传APK后等待1到2个小时,然后看看你是否仍然收到“应用程序错误”

我也遇到了同样的问题……但现在问题解决了

我的观察基于几个试验:

  • 版本代码应该在Google Play和设备上都匹配
  • 即使版本匹配,也可能会出现此错误
  • 等待大约1到2小时,然后重试,我们将不会得到此错误

  • 希望这对您有所帮助。如果您遇到此错误,我想再分享一个可能的解决方案。我最初将我的apk草稿上传到谷歌,并启用了计费权限,所以我可以设置应用内可购买项。后来,我上传了另一个apk,但我的AndroidManifest中没有计费权限,这导致了错误。这似乎是一个不太可能的案例,但它发生在我身上,所以这是可能的


    编辑:同样,如果你提交给谷歌的草稿版本没有签名,也会出现错误。

    为了投入我的两分钱,我可以通过上传到Beta版并创建一个Gmail帐户,在设置选项卡下使用我的应用程序的新版本进行测试

    我现在把它转到生产

    谢谢!
    内森

    旧思路,但加上我的经验

    我安装了一个版本代码比商店中的版本代码高1的apk。在我的Nexus7上的两个不同帐户上玩过,遇到了这个问题。因此,我从应用商店卸载并重新安装,以确保版本代码匹配。即使等了一夜,错误也不清楚


    事实证明,我需要从我绑定到Nexus7的所有3个google帐户中卸载。当我从nexus 7上的所有三个帐户中明确卸载应用程序,然后从应用商店重新安装时,它恢复了。

    复制自重复问题:

    出现此错误的原因有多种。
    以下是谷歌IAB测试的要求列表

    先决条件:

  • AndroidManifest必须包含“com.android.vending.BILLING”权限
  • APK内置于释放模式下
  • APK使用发布证书签署
  • APK至少被上传一次到开发者控制台的alfa/beta发行版频道(以前是草稿)。(需要一些时间~2h-24h
  • IAB产物为p