技術ネタ‎ > ‎

Google In-App payments

Google In-App Payments 試してみました。

サンプルコード

GAE/J で動く コード が置いてあります。
src/main/resources/payments.properties が必要です。 同ディレクトリに payments.properties.sample があるのでコピペして内容埋めて使ってください。
mvn eclipse:eclipse を叩いてからEclipseにimportしてご利用ください。

使うのは非常に簡単ですね。
Chrome 以外に、iOS5 や Androidからも買えるっぽいです。

動くサンプルも用意してあります僕(vvakame) に$0.50 リアルに支払います。めんどいのでキャンセル要求などは受け付けません。
将来的にはPostbackURLを変更するなどして動かなくなる可能性もあります。(2011年内は大丈夫だと思うよ!)

仕組みの説明

自分でサーバを建てることが必須です。
JWTっていうのは、Web上でやりとりされる署名付JSONらしいです。(てきとう
  1. Webアプリが自サーバにJWT(注文票みたいなもの) を生成してもらう
    • サンプルコードの /pre のこと
  2. Google先生のJSライブラリを通じて適当にやってもらう
  3. Google先生のサーバから事前に設定しておいたPostbackURL にJWTで購買データが来る
    • サンプルコードの /post のこと
  4. 内容を解析して、JWTに含まれる orderId だけを返答する ステータスコードは200
  5. 課金完了!

注意点

  • 今のところ、Sandboxのサーバが500とか返してくるので本番サーバでいきなり試してみるしかない
  • Googleのサーバにアイテムリストを登録したりするのじゃないので、自分のサーバでいくらでも動的に金額を変更可能
    • ユーザは毎回、金額が正しいか自分でちゃんと見ないといけない
  • ギフトコードの仕組みがあるっぽいけど使い方がよくわからない
  • Postback URL が1つしか設定できないので、複数のアプリで使いたい場合にとても苦労しそう…

何か質問があったら @vvakame までどうぞ。分かる範囲で答えます。

参考
Comments