自作スマホアプリに課金システムを実装する方法(調査中)

ユーザーとしてこれまでたくさんのソシャゲ、スマホアプリに課金してきましたが、自分で作ったゲームにも実装できるのか、色々調べて挑戦してみました。エラーが起きたらユーザーから訴えられたりして怖いですよね。動作チェックとか、課金してみなきゃいけないのか?とか思ってたりしましたが、もちろんそんなことはなかったです。

※今回写真とか付けられてないので、後日更新します。

ステップ1:ストアの準備

  • Google Play / App Store に開発者登録
  • 商品IDを登録(コイン=消耗型、広告削除=非消耗型、サブスク=定額課金)
    私はとりあえず「広告削除」で挑戦しました。

これ結構手間取ることありますし、お金も発生するのでとりあえず知っておくだけでいいと思います。

ステップ2:Godotにプラグイン導入

  • Android → godot-google-play-billing
  • iOS → StoreKit プラグイン
    addons や ios/plugins に入れて有効化します。
    プラグインって何?だと思うのでそれも別記事用意します

ステップ3:コード実装

イメージとしてはこんな感じです。IAPってのを導入しなきゃいけないと。

func purchase_item(product_id):
iap.purchase([product_id])

「商品一覧取得 → 購入ボタン押す → 結果受け取り → アイテム付与」

流れはこんなイメージ

ステップ4:テストの壁

いちばん気になるところ。

Android → 内部テスト用にGoogle Play Consoleを使う

iOS → SandboxアカウントやTestFlightを使う

普通にアプリをインストールしても課金のテストはできません。

「テスト用アカウントを作る」「審査前にSandbox環境で買ったことにする」というイメージのテストと理解しました。

ステップ5:セキュリティ

本格的にやるなら「レシート検証」といって、購入情報が本物かどうかをサーバーでチェックする必要があるようですが、ちょっとよく分かってません。

感想まとめ

  • ゲーム開発とは違ってわけわからん
  • プラグインとストア設定が肝心
  • テスト環境の準備がこれでいいのか悪いのか

まだちょっとこれで安心!とは言えないので引き続き調査します。

コメント