アプリの外にある、2つのサービス
第9章で作ったアプリは、iPhoneの中だけで動いていました。この章では、アプリを外のサービスとつなぎます。
どちらも、アプリを大きく育てられる道具です。そのかわり、作業も、気をつけることも増えます。だから最初に考えたいのは、本当に必要かです。
データの置き場所は、本当にいる?
アプリが覚えておくこと(今日の目標、勉強した時間など)は、iPhoneの中にしまっておくこともできます。外に置き場所が必要になるのは、たとえばこんなときです。
- ほかの人と分け合う:いま何人が使っているか、空いている席はどこか
- 機種を変えても残したい:iPhoneを買いかえても、記録を引きつげるように
- いくつもの機械で使う:iPhoneとiPadで同じ記録を見たい
どれにも当てはまらないなら、外の置き場所はつながないほうがいい、とヒトリキカクは考えています。つなげば、サービスの登録、決まりごとの設定、個人情報の扱いと、考えることが一気に増えます。
頼み方の例
Supabaseにつなぐ
ヒトリキカクは、外の置き場所にSupabase(スーパベース)を使いました。データベース(データをしまう表)と、使う人の見分け(ログインなど)を、まとめて用意してくれるサービスです。
アカウントを作り、新しいプロジェクトを作るところまでは、あなたが画面で操作します。そのあと、表の作り方や、アプリとのつなぎ方はAIに頼めます。
秘密の鍵を守る
外のサービスにつなぐと、鍵(長い英数字の文字列)を受け取ります。アプリがサービスとやりとりするための合言葉です。鍵には、アプリに入れてよいものと、絶対に外に出してはいけないものがあります。
- どの鍵がどちらなのかは、AIに聞いて確かめます
- 鍵は、プログラムに直接書かず、専用のファイル(
.envなど)にまとめてもらいます - そのファイルは、人に渡したり、公開したりしない設定にしてもらいます
- 外に出してはいけない鍵は、AIとのやりとりに貼りつけず、そのファイルに自分で書きこみます
頼み方の例
決まりごとを、データの側に
みんなのデータを1か所に置くと、ほかの人のデータを書きかえられてしまわないかが心配になります。Supabaseには、「自分のデータは自分だけが変えられる」のような決まりを、データの置き場所の側に設定するしくみがあります。
この決まりは、アプリの見た目からは見えません。だからこそ、AIに作ってもらったら、どんな決まりになっているかを、ことばで説明してもらいます。
頼み方の例
AdMobで広告を入れる
無料のアプリで収入を得る方法のひとつが、広告です。GoogleのAdMob(アドモブ)を使うと、アプリの中に広告を出せます。第6章のAdSenseのアプリ版のようなものです。
試すときは、必ず「テスト広告」
作っている途中は、本物の広告ではなく、テスト用の広告を表示します。自分のアプリの本物の広告を、自分で何度も見たり押したりすると、規約に反するとみなされることがあるからです。
頼み方の例
広告は、第9章のExpo Goの中では動きません。自分のアプリ専用の、試し用の版を作って確かめます。作り方はAIに聞いてください。
「追跡してもいいですか?」を聞く
広告のしくみの中には、使う人のことを知って、その人に合った広告を出すものがあります。iPhoneでは、そのために使う人に許可を求める画面を出すことが決められています。説明の文を用意するだけでなく、実際にその画面を出すしくみが必要です。
広告に頼りきらない
広告は、読み込みに失敗することがあります。電波が弱いとき、広告の在庫がないとき。そのときにアプリが使えなくなってしまう作りは避けます。「広告が出なくても、先に進める」道を必ず用意しておきます。
サイトにも、ひとつファイルを置く
AdMobでは、あなたのWebサイトに app-ads.txt という小さなファイルを置くよう求められます。「このアプリの広告は、確かにこのサイトの持ち主のものです」と示すためです。第5章で作ったサイトが、ここで役に立ちます。
ヒトリキカクの場合
自習室アプリでは、40の席の「空いている/座っている」を、使う人みんなで分け合う必要があったので、Supabaseを使いました。名前もメールアドレスも登録せずに使えるようにして、データの側には「空いている席にだけ座れる」「自分の席からだけ立てる」という決まりを入れています。アプリが急に閉じられたときも、自動で席が空くようにしました。
広告はAdMobです。入室するときに広告を見てもらう作りですが、AdMobの審査のことも考えて、広告が読み込めないときや、しばらく待っても出ないときは「広告なしで入室する」を選べるようにしておきました。また、追跡の許可を求める画面は、説明の文を書いただけでは出ず、実際に画面を出すしくみを足す必要がありました。
つまずきやすいところ
- なんとなく外の置き場所をつなぐ。必要がなければ、つながないほうが、作るのも守るのも楽です。
- 秘密の鍵を、やりとりに貼りつける。貼りつけてしまったら、そのサービスの画面で鍵を作り直します。
- 自分のアプリの本物の広告を押す。試すときはテスト広告で。
- 広告が出ないと先に進めない作りにする。使う人が困るうえ、審査でも不利になります。
あなたなら、どうする?
- あなたのアプリで、守らなければならない情報は何ですか。
- 広告をどこに置けば、使う人が嫌な気持ちにならずにすむと思いますか。
- あなたなら、アプリを無料で出しますか。それとも別の方法を考えますか。
ヒトリキカクが大事にしたこと
正解ではなく、ひとつの例です。あなたのやり方と、くらべてみてください。
- 外の置き場所は、分け合う・引きつぐ・いくつもの機械で使う、が必要なときだけ
- 鍵は専用のファイルに分け、外に出してはいけない鍵は自分で書きこむ
- データの側の決まりは、AIにことばで説明してもらって確かめる
- 広告は、作っている間はテスト広告。追跡の許可の画面も忘れずに
- 広告が出なくても、アプリは使えるようにしておく
次の章では、アプリをApp Storeに出すための審査に挑んだときのことを書きます。