未分類

RecenueCat+Androidアプリで定期購入を実装するメモ

やること

Firebase側の準備

Firebase Authenticationで匿名ログインの許可

Firebase Authenticationで匿名ログインを許可する。これはあとで出てくる「レシート情報」をFirebase Databaseで管理させたいため。操作の仕方としては、Authenticationのメニューから[匿名]をクリックし、

[有効にする]のボタンを押して、[保存]を押すだけ。

Firestoreの有効化

レシート情報を確保しておくためにFirestoreを使います。

RevenueCatがサービス内容を変更したりサービス終了したりすることに備えます。

(まぁそれ言うと他のどのサービスが死んでも立ち行かなくなりますが)

FirebaseコンソールからFirestoreを有効化します。

 

AndroidManifest.xmlの編集、バイナリのアップロード

まずGoogle Play Consoleに定期購入アイテムを作る前段階として、AndroidManifest.xmlに以下の宣言を設定済みのバイナリをアップロードしておかなければなりません。

アップロードは、製品版であげなくて大丈夫です。AlphaリリースでもOKです。とにかくアップロードします。

定期購入アイテムの作成

バイナリのアップロードが完了すると、Googleコンソールで定期購入アイテムを作成することができるようになります。

[定期購入を作成]をクリックします。

FlutterでAndroidとiOSに同じアプリをリリースすることが多いので、

アイテムIDに使う英字は小文字だけにするようにしています。大文字を使うと、Google Paly Console側でアイテムIDを入力できなくなるからです。アイテムIDをiOSと統一しておけば、RevenueCatの設定が半分ですみます。

[説明]や[名前]は、別に合わせる必要はないと思います。適当で。登録が完了したらこんな感じの画面になります。

RevenueCat側の設定

Entitlements/Offerings/Packages/Productsという概念について

RevenueCatには、課金アイテムを管理する概念として、Entitlements, Offerings, Packages, Productsというものがあります。iOSやAndroidにはない概念もあり、ぱっと見理解が難しいですがそれぞれ見ていこうと思います。

Products

Productsは、一番下層の概念です。

App Store Connectで作成するApp内課金アイテム、Google Play Consoleで作成する定期購入アイテムに相当する概念です。それらと1:1で対をなします。Productsについては理解することは容易いと思います。

Packages

Packagesは、Productsのひとつ上の上位層の概念です。

複数のProductsをまとめて一つにして扱うものです。

例えば、iOS用の1ヶ月課金アイテムとAndroid用の1ヶ月課金アイテムを一つの「1ヶ月パッケージ」にまとめる、といった概念で使用します。

Offering

Offeringは、Packagesのひとつ上の上位層の概念です。

複数のPackagesをまとめて一つにして扱うものです。

通常の使い方であれば、Offeringは一つだけ存在していれば運用できます。

例えばアプリを利用するユーザにアプリがいくつかの区分を持たせているようなとき(ブロンズレベル、シルバーレベル、ゴールドレベル、プラチナレベルのような区分があったとして)、

ブロンズレベルのユーザーにはOffer_Bronzeをみせる、シルバーレベルのユーザーにはOffer_Silverを見せる、といった使い方をすることができます。

まぁ、通常そこまで凝ったことを個人アプリ開発ですることはないと思うので、Offeringはアプリに対して1つ存在していればいいと思います。

 

Entitlements/Offerings/Packages/Productsを作っていく

Productsを作る

RevenueCatから[Configuration]→[Products]を選択します。その後右上の[+ New]をクリックします。

Identifierには、App Store Connect, Google Play Consoleで登録するときに指定したIDと同じものを入力します。

そして、[App Store]か[Play Store]かも選びます。

必要なアイテム数これを繰り返します。

-未分類

© 2021 かずのアプリときどきキャンプ飯 Powered by AFFINGER5