服务器谷歌订单验证 - server account - json
程序员文章站
2022-05-20 09:27:00
...
服务器接入谷歌订单验证
上架谷歌,需要在服务器端接入谷歌的订单验证,颇费了一番功夫。
流程
经过一番尝试,最终使用server account - json文件方式接入。关于如何生成对应的json文件,网上有相应的教程。
注意:要使用关联项目的主账号生成json文件。
代码步骤
GoogleCredential credential =GoogleCredential
.fromStream(new FileInputStream(FireBaseConstants.LOCAL_FOLDER+"google-Japan.json")).createScoped(Collections.singleton(AndroidPublisherScopes.ANDROIDPUBLISHER));
credential.refreshToken();
accessToken= credential.getAccessToken();
关于Collections.singleton方法里的参数,
官方给的API里有写的是SQLAdminScopes.SQLSERVICE_ADMIN,
但是出现了403:Request had insufficient authentication scopes.的错误,
换成AndroidPublisherScopes.ANDROIDPUBLISHER就好了,
如果AndroidPublisherScopes.ANDROIDPUBLISHER不行的话,换回去试试。
注意:一定要调用refreshToken方法,不然啥也拿不到。
String queryUrl = "https://www.googleapis.com/androidpublisher/v3/applications/" +
packageName + "/purchases/products/" + productId + "/tokens/" + token;
queryUrl += "?access_token=" + accessToken;
然后把前一步拿到的access Token放到请求里面,去谷歌访问就能拿到相应的谷歌订单数据了。
参数:packageName - 包名,productId - 产品Id,token - 谷歌返回的支付成功的purchaseToken
上一篇: 树种统计.