我将在我的应用程序中实现inApp购买,并将产品添加为"Manage Product“。购买后,我想做收据验证.For,我在开发人员控制台中进行了配置,如
这些步骤是
但我不知道下一步该怎么做。如何使用此文件收据验证
在购买后,我得到的回报是
{
"orderId":"12999763169054705758.1371079406387615",
"packageName":"com.example.app",
"productId":"exampleSku",
"purchaseTime":1345678900000,
"purchaseState":0,
"developerPayload":"bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ",
"purchaseToken":"rojeslcdyyiapnqcynkjyyjh"
}有谁能帮我处理下一个步骤,以便使用包含JSON值的下载文件来进行收据验证?
发布于 2016-02-03 13:36:20
现在我知道您正在使用原始问题作为服务器端代码,接下来您将需要使用Google客户端Java库。我自己对Java并不满意,但是文档很容易理解。
首先,您需要验证,看看谷歌提供的示例代码。您目前有一个JWT (JSON ),但是可以通过从Google上的相同位置下载p12证书文件来保留这个示例。
您的身份验证代码应该如下所示:
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
JsonFactory jsonFactory = JacksonFactory.getDefaultInstance()
GoogleCredential credential = new GoogleCredential.Builder().setTransport(httpTransport)
.setJsonFactory(jsonFactory)
.setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
.setServiceAccountScopes(Collections.singleton(AndroidPublisherScopes.ANDROIDPUBLISHER))
.setServiceAccountPrivateKeyFromP12File(new File("key.p12"))
.build();另外,不要忘记设置SERVICE_ACCOUNT_EMAIL并将key.p12文件存储在服务器可以访问的地方。
如果你感兴趣,这是docs AndroidPublisherScopes。
正如我提到的,我对Java的认识有限,所以请使用您忽略我所犯的任何错误。
谷歌提供了一些代码样本,下载和链接到GitHub repos。我建议你去看看。
在这里,您可以使用AndroidPublisher.Purchases.Products.Get方法检索购买的详细信息。文档列出签名如下:
AndroidPublisher.Purchases.Products.Get(java.lang.String packageName, java.lang.String productId, java.lang.String token)对于订阅,请使用AndroidPublisher.Purchases.Subscriptions.Get。
如果您需要更多的帮助,可以考虑使用java和google-api-java-client标记问一个问题。
https://stackoverflow.com/questions/35169960
复制相似问题