2013-03-10 24 views
4

我们的测试版应用程序使用android.test.purchased,因此客户可以免费进行测试。但最近有消费者尝试使用这些测试产品。在购买过程中仍然工作正常,但是当我们尝试使用:IAB consumePurchase()不再适用于静态响应android.test.purchased

int response = ms.consumePurchase(3, mContext.getPackageName(), token); 

现在,这总是返回RESULT_DEVELOPER_ERROR == 5。通过的数据看起来有效,令牌是inapp:com.lootworks.swords:android.test.purchased,我认为这对于静态测试产品是正确的。

同时我们之前的所有应用程序版本也停止工作,并且我们没有更改我们的代码,所以它肯定看起来像是IAB自身发生了变化。

我还测试了真实(用于$)产品的购买/消耗,并且它使用相同的代码成功完成。所以消费问题似乎只影响静态响应测试项目。

回答

6

随着肖恩的帮助和一些额外的测试,这似乎是谷歌播放IAB回归。已经打开了一个bug https://code.google.com/p/android/issues/detail?id=53077

+1

这在2013年3月14日(pi day :)再次开始工作。像以前一样,我没有改变任何东西,所以我认为谷歌做了一个修复 – mwk 2013-03-14 14:49:39

+0

所以有什么修复?我仍然看到它不时发生与最新版本的图书馆... – 2014-01-14 23:54:37

2

我和我的团队遇到了同样的问题。应用程序消耗代码没有什么改变,所以这很奇怪。该应用程序还没有发布,所以我们还有很多工作要做,但是这肯定会让猴子扳手进入测试阶段。

这可能不是一个选择,但你可以改变命名,删除,开发者控制台应用程序进入和经过制作一个新的,并再次分裂键的过程中,等

我只是建议这样做,因为这个问题似乎没有发生在所有应用程序上。无论如何,如果我们的应用程序的消耗不会很快再次开始神奇的工作,这是我们将尝试。

+0

你是谁说的是我们? – 2013-03-10 18:01:39

+0

我们=与之合作的应用开发团队。 '我们'与我们正在开发的应用程序中的一个应用程序具有相同的问题。我认为这很明显,但也许不是。 – 2013-03-10 18:09:14

+1

感谢您的回复,认为它很明确,并且从另一位开发人员获得确认非常有帮助。因为我们有很多已安装的用户,所以我认为我们可能需要破解一个新版本,以便在我们等待Google提供的修复(如果它是回归回归)或者一些变通或修复时完全绕过IAB购买流程在我们的代码中。现在我看不到其他的东西了,因为对consumePurchase()的调用非常简单,甚至无法看到程序化的替代方法。 – mwk 2013-03-10 18:41:11

相关问题