测试钛';Android的应用内计费模块

测试钛';Android的应用内计费模块,android,titanium,keystore,signing,billing,Android,Titanium,Keystore,Signing,Billing,有人知道如何在Tianium调试模式下正确测试android应用程序内的实时购买吗 在此之前,我成功地测试了应用程序的实时购买,并在从Tianium Studio进行调试时创建了真实的事务。这是因为之前,我使用development.apk错误地创建了我的Google Play商店列表,如下所示: 因此,Google play将我的dev_密钥库与我的应用内购买代码关联起来 但是,当我尝试使用生成的密钥对/证书构建和上载我的生产版本时,如下所示: wiki.appcelerator.org/d

有人知道如何在Tianium调试模式下正确测试android应用程序内的实时购买吗

在此之前,我成功地测试了应用程序的实时购买,并在从Tianium Studio进行调试时创建了真实的事务。这是因为之前,我使用development.apk错误地创建了我的Google Play商店列表,如下所示:

因此,Google play将我的dev_密钥库与我的应用内购买代码关联起来

但是,当我尝试使用生成的密钥对/证书构建和上载我的生产版本时,如下所示: wiki.appcelerator.org/display/guides/distribution+Android+应用程序

Google Play商店随后(正确地)拒绝了我的候选制作,抱怨我的APK使用了与原始上传中使用的证书不同的证书:

You uploaded an APK that is signed with a different certificate to your previous APKs. 
You must use the same certificate. Your existing APKs are signed with the certificate(s) 
with fingerprint(s): [ SHA1: ...:9D:47:9F ] and the certificate(s) used to sign the APK 
you uploaded have fingerprint(s): [ SHA1: ...:5D:E2:4E ]
因此,我不得不删除我的google play商店列表,并使用上面引用的appcelerator指南中描述的签名APK从头开始重新创建它

这导致我的应用程序内购买与已签名的APK关联,这意味着现在当我测试应用程序的开发版本并尝试进行应用程序内购买时,我会收到以下信息:

This version of the application is not configured for billing through Google Play
这不是一个时间问题(我已经等了24小时),如以下建议所示: stackoverflow.com/questions/11068686/this-version-of-the-application-is-not-configured-for-billing-through-google-pla

这是因为我的开发构建中的dev_密钥库与与应用内购买代码关联的证书不匹配

如果Tianium studio允许我在调试时指定我的应用程序证书,我想我可能能够绕过此问题,如下所示:

在此期间,调试购买的一个测试解决方案是,我创建了一个额外的、单独的“测试”重复google play应用程序,该应用程序具有相同的应用内购买,并将其与我的development.apk(而不是我的签名apk)相关联。在测试期间,我只需要更改:

require('ti.inappbilling').setPublicKey(...)
指向测试项目而不是实际项目。然后,当我对付款感到满意时,我将使用真正的密钥进行构建

这是一个真正低于标准的解决方法,我希望有人有更好的方法来做事情。

添加了指定用于非生产版本的密钥库的功能。使用此选项,您将不需要您提出的解决方法