我在我的应用程序中实施 inApp 购买,并将产品添加为" 管理产品"。购买后我想做收据验证。我在开发者控制台中配置了
步骤
Google Developer console - >在服务帐户中添加凭据并将其设置为JSON
添加后,我从开发者控制台获得了一个文件,其中包含
{
"type": "service_account",
"project_id": "api-xxxxx-xxx",
"private_key_id": "xxxxxxxxxxxxxxxxxxxxxx",
"private_key": "-----BEGIN PRIVATE KEY-----\ixxxxxxxxxxxxxxxx=\n-----END PRIVATE KEY-----\n",
"client_email": "test-in-app-receipt-validation@api-xxxxxxx.iam.gserviceaccount.com",
"client_id": "xxxxxxxxxxxxxxx",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/test-in-app-receipt-validation%40api-9129873511008807687-564452.iam.gserviceaccount.com"
}
但我不知道如何进行下一步。 如何使用此文件收据验证
购买后我得到了响应
{
"orderId":"12999763169054705758.1371079406387615",
"packageName":"com.example.app",
"productId":"exampleSku",
"purchaseTime":1345678900000,
"purchaseState":0,
"developerPayload":"bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ",
"purchaseToken":"rojeslcdyyiapnqcynkjyyjh"
}
任何人都可以帮助我如何处理收据验证的下一步,以便使用包含JSON值的下载文件
答案 0 :(得分:3)
现在跟进您的http://theunlockr.com/2015/08/23/enable-back-button-ios-8-video/,我知道您正在使用Java作为服务器端代码,您将需要使用original question。我自己对Java不满意,但文档很容易理解。
首先,您需要进行身份验证,然后查看Google提供的Google API Client Library for Java。您目前拥有JWT(JSON Web令牌),但您可以通过从Google API信息中心的相同位置下载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
文件存储在服务器可以访问的位置。
如果您有兴趣,这是example code。
正如我所提到的,我对Java的了解有限,所以请不要忘记我所犯的任何错误。
谷歌提供了一些docs AndroidPublisherScopes下载和GitHub回购链接。我建议检查一下。
从这里,您可以使用code samples方法检索购买的详细信息。文档列出了如下签名:
AndroidPublisher.Purchases.Products.Get(java.lang.String packageName, java.lang.String productId, java.lang.String token)
对于订阅,请使用AndroidPublisher.Purchases.Products.Get。
如果您需要更多帮助,请考虑使用java
和google-api-java-client
代码提问。