私の中央ゲームサーバーでGoogleのAPI経由でAndroid IAPを検証したいと考えています。AndroidのJavaサーバーサイド検証IAP
これに関する多くの部分的な情報があり、私の心を吹き飛ばしています。 Google Developerになるために25ユーロを支払ったわけではありません。なぜなら、私はそれを動作させることができるかどうかわからないからです。
IAPが作成されると、JSONオブジェクトが返されます。このオブジェクトには、purchaseToken
とproductId
(source)のようないくつかのフィールドが含まれています。
次のGETリクエストで購入した商品に関する情報をリクエストできることがわかりました:GET https://www.googleapis.com/androidpublisher/v2/applications/packageName/purchases/products/productId/tokens/token
私はこれを問題なくプログラムすることができますが、あなた自身を認証する必要があります。"この要求には、次の有効範囲の許可が必要です"(source)。 これは私が混乱し始めたところです。
- デベロッパーコンソール(Link)で何らかのログイントークンを作成する必要があります。私はどんなタイプなのか分からない。 OAuthまたはサービスアカウントですか?
- このトークンは短命です。リフレッシュする必要があります
インターネット上で見られるいくつかの巨大なコードスニペットが機能するかもしれないし、うまくいかないかもしれませんが、それらはすべて部分的であり、あまりよく書かれていません。
Google検索のGoogleライブラリAPIライブラリ:linkが見つかりました。このAPIは、これらすべての問題をOAuthとトークンで解決するためのものです。しかし、私はこのAPIを動作させる方法を理解することができません。
おそらくそれほど難しくはありませんが、それを行う方法はたくさんあります。明確な例は見つけられません。
TL; DR: Google Play IAPサーバーサイドを確認する必要があります。これを行うには、私はGoogleのJava APIを使用したいと思います。
編集:これは簡単な解決策になるかもしれません。 オリジナルのJSONとJSONをサーバーに渡すことは、非対称の署名サーバー側を確認するだけで済むため、簡単です。
これは役立ちます:https://stackoverflow.com/questions/35127086/android-inapp-purchase-receipt-validation-google-play/35138885#35138885 –
私はそれに追いつこうとしましたが、そのAPI UIには完全に変更されました。また、トークンのリフレッシュの問題に対する解決策はありません。 – kwantuM