やっとGoogle playで購入履歴を確認できました。モバイル アプリから何かを購入すると、Google Play からレシートが送られてきます。次に、この領収書をサーバーに送信し、サーバー側で次の 2 つのことを行う必要がありました。
-以前に生成されたサービス アカウント Json を使用して、Google 資格情報を取得します。
-Google 認証情報とレシートを使用して、Google Play から購入情報を取得します。
そして、次の 2 つの関数を使用して実行しました。
private static GoogleCredential getGoogleCredential() throws IOException {
List<String> scopes = new ArrayList<String>();
scopes.add(AndroidPublisherScopes.ANDROIDPUBLISHER);
ClassLoader classLoader = MY_CLASS.class.getClassLoader();
GoogleCredential credential = GoogleCredential.fromStream(classLoader.getResourceAsStream(GOOGLE_KEY_FILE_PATH))
.createScoped(scopes);
return credential;
}
private static ProductPurchase getPurchase(GoogleReceipt receipt, GoogleCredential credential)
throws GeneralSecurityException, IOException {
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
JsonFactory jsonFactory = new JacksonFactory();
AndroidPublisher publisher = new AndroidPublisher.Builder(httpTransport, jsonFactory, credential)
.setApplicationName(YOUR_APPLICATION_NAME).build();
AndroidPublisher.Purchases purchases = publisher.purchases();
final Get request = purchases.products().get(receipt.getPackageName(), receipt.getProductId(),
receipt.getPurchaseToken());
final ProductPurchase purchase = request.execute();
return purchase;
}
購入オブジェクトを使用して、購入をわずか 1 分で検証することができました。
編集: API パッケージで GoogleReceipt クラスを探す必要はありません。これは、レシート情報を解析するために作成した基本的なクラスです。