MUSHIKAGO APPS MEMO

虫カゴアプリ : インストール直後とログイン認証の流れ

CheerMeUpのインストール直後の設定の流れをMEMOしておきます。現在のところ、CheerMeUp、WoodenHeadの2つは、クラウドアプリとなっていますので、初期段階で下記のようなログイン認証を必要とします。(CheerMeUpは、虫カゴデザインスタジオで作成されたアプリなので、以下では「虫カゴアプリ」と書きます)

※ CheerMeUp 2.4.0 プレリリースプログラム参加者募集中です。抽選で2名様に大重さんのSwift本をプレゼント! ※ →「CheerMeUp プレリリースプログラム開始! : GPSで移動距離を記録して、その総距離をルート検索に置き換えて、擬似的な旅を楽しむアプリ

※ Swift本プレゼントキャンペーンは終了しました。たくさんのご応募ありがとうございました。

 

クラウドアプリというのは、データをiPhoneなどの実機内に記録するのではなく、サーバ側に保管し、どの実機でこのアプリを使っても共通のデータを扱えるようにします。将来、機種変更したとしても新しい実機で再度同じサービスを使ってログインすれば、引き続き同じ状態でアプリを使えるようになります。

現在のところ、匿名ログイン、Facebook認証、Twitter認証、Google認証、Eメールログイン、アカウントのいずれかのサービスでログイン認証することで、虫カゴアプリに一意のアカウントが作成されます。

また、これらの複数のサービスのどれでログインしても同じアカウントにログインするようにするには、ログインした状態のまま、他のサービスでもログインすれば、同じアカウントに紐づくように作ってあります。(ログアウトしてから別のアカウントでログインすると、新規にアカウントが作成され、別々のアカウントとなります)

例えば、Facebookでまずログインし、その状態で、Twitterへログインすると、その後、FacebookでもTwitterでも同じアカウントへログインすることが可能です。さらに、ログインしたまま、Googleでもログインすれば、3つサービスのどれでログインしても同じアカウントにログイン可能になります。

それでは以下に、インストール直後の設定からスクリーンショット付きでMEMOしておきます。

通知設定の許可

起動直後にまず「通知」の許可を聞かれます。現状通知機能を使うシーンはありませんが、将来的にこの許可が必要な機能を利用する可能性があるので、ここでは「許可」を選択しておいてください。

ログイン認証の流れ

このアプリは、現在のところ、ログインしないと何もできないように作っています。匿名ログイン、Eメールとパスワードによるログイン、Facebook、Twitter、Googleのいずれかのサービスで認証する事でログインできます。匿名ログインの場合のみ、その端末だけでアクセスできるアカウントを作成することになります。そのほかのログイン方法であれば、他のiOS端末でも同時に同じアカウントのデータを利用することが可能です。

このダイアログが出たら、OKを押すとログイン画面に遷移します。(ログイン画面は、設定からいつでもアクセス可能です)

その端末で初めて利用する場合は、「アカウント作成 / ログイン」だけが押せるようになっています。

「新規アカウント作成」ダイアログで、「匿名ログイン」か「ログイン認証」かを選びます。

SNSと連携する流れ

ここではFacebookのケースで記載します。
Facebookサービスによるログイン画面が現れます。「Facebookアプリでログイン」をクリックします(Facebookアプリがインストールされている必要があります。また、この辺の構成はFacebookやiOSの仕様変更によって変わる場合もあります)ちなみに、iOS10くらいまであったiOS自体に紐づいたFacebookとTwitterのアカウントによるログインはできなくなった模様です。

もう一度ダイアログが出て、アプリを起動するか聞かれます。

Facebookにログイン認証を許可してもらう画面です。ここで「ログイン認証」に必要な最低限の権限の許可を得ています。(これ、よく見かけると思いますが、必要以上に許可を得ようとしているアプリがあったりするので気をつけましょう。作る側も気をつける部分です)

Facebookでのログイン許可を得ることができ、問題なく虫カゴアプリにもログインできた場合、元のこの画面に戻り、鎖アイコンが繋がり、Facebookアイコンが色付きになります。これで、虫カゴアプリは使えるようになります。

他のサービスでも同じアカウントにログインできるようにしておく

上記で、Facebookでログインできるようになりました。これは、いつでも、Facebook認証において同じユーザで認証すれば、虫カゴアプリへも同じアカウントにログインできるようになったということです。では、他のサービスを使ってログインした場合でも、今作成したものと同じ虫カゴアプリアカウントにログインできるようにしてみます。(Facebookだけでいい、という場合は、もちろんこのリンク設定はしなくてもOKです)

また、匿名ログインでアカウントを作成した場合、機種変更で別の端末でも継続して同じデータを使いたい場合や複数台のiOS端末で同時に同じデータを利用したい場合なども、この作業を行います。

Facebookで(あるいは匿名で)ログインしている状態で、TwitterあるいはGmailを押します。

現在ログインしているユーザに対し、選択したサービスでもログイン可能にしますか?

と、短い文では、こう出しています。

Googleへのログインを行います。

Googleによる認証が開始されます。

問題がなければ、FacebookとGoogleの両方のアイコンが着色され、同じアカウントにログインしていることが示されます。今後は、このどちらかでログインすれば、虫カゴアカウントにもログインできるようになります。

 

すでに着色されているアイコンを押すと、そのサービスとのリンクを解除します。ただし、利用しているサービスが1つだけの場合、その1つをも解除することはできません。

サインアウトについて

「サインアウト」を押すとことによって、虫カゴアプリアカウントからログアウトされるとともに、この虫カゴアプリ内におけるFacebook、Twitter、Goolgeへのログイン状態からも解放されます。あまり使うことはありません。

ちなみに、匿名ログインの状態で、サインアウトすると、再度ログインしても別のゲストとして扱われるため、

次回以降の起動時について

一度、上記のようなログイン設定をしておけば、その情報はiPhoneのキーチェインに保存され、次回以降の起動時に自動的にログインできるようになります。つまりに、最初だけちょっと面倒な設定をする必要がありますが、次からはスムーズにアプリを開始することができる、という感じです。

また、これで機種変更や破損などによって、デバイスを変えてしまった場合でも、Facebook、Twitter、Googleのアカウントさえ同じものが使えれば、虫カゴアプリも同じアカウントを継続して使えるようになるので、とても便利です。

以上が、虫カゴアプリの初期時の設定です。各サービスやそれらから提供されるSDKのバージョンアップ等によって、この辺の流れや画面は、とても頻繁に更新されます。が、だいたいの流れは昔から変わらないので、今後もおおよそこんな感じの流れになると思います。