Android

Firebase Authenticationを設定する

投稿日:2019/10/01 更新日:

先日、Firebaseプロジェクトを作成しアプリを追加しました。
Firebaseにプロジェクトを追加する手順

今回はFirebaseのAuthenticationを設定してみようと思います。

Firebase Authenticationとは

アプリで認証をより手軽に行えるようにするための認証サービスです。
最近はサービスのアカウントの他にGoogleやTwitterなどの外部のサービスのアカウントで認証することが多いと思います。
ユーザーにとってはアカウント作成という面倒な手順を飛ばせるので、お手軽に利用してもらえる一方でアプリ/サーバーともにサービスに応じた開発が必要になります。
これをより手軽に実装できるようにしてくれるのがFirebase Authenticationです。

サーバー側の処理に関してはFirebase Authenticationが受け持ってくれるので、アプリではFirebase Authentication SDKを使って画面・認証等を行います。

Firebase Authenticationを設定する

Firebase Authenticationを使うには、何の認証方式に対応するか設定する必要があります。

  • メールアドレス/パスワード
  • 電話番号
  • Google
  • Facebook
  • Twitter
  • GitHub
  • など

通常用途では困らない程度に対応しております。また独自認証にも対応しているみたいです。

今回はGitHubを使ってみたいと思います。
GitHub連携をする場合、GitHub側でOAuthAppの設定が必要です。
このときにFirebaseのコールバックURLが必要になるのでメモしておきます。

FirebaseコンソールからAuthenticationを選択しログイン方法を選択します。
対応している認証プロバイダーが表示されるのでGitHubを選択します。

選択するとコールバックURLが表示されるのでメモしておきます。

GitHubの設定

Firebase AuthenticationからGitHubで認証するためにアプリケーションを作成します。
GitHubにログインして Settings -> Developer settings -> OAuth Apps
を開きます。
適当に入力していきますがAuthorization callback URLは先程メモしたFirebase AuthenticationのコールバックURLを設定します。

作成するとClient IDとClient Secretが表示されますのでメモしておきます。

Firebase Authentication GitHubの設定

再びFirebaseコンソールで先程取得したGitHubのClient IDとClient Secretを設定します。
これで設定完了です。

続いて

これだけだと設定して終わりなので次は実際にGitHubアカウントで認証を行うアプリケーションを作成したいと思います。

-Android

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

Androidアプリ開発を行う前に知っておきたかったこと

Androidアプリ開発を行うようになってから半年以上経過しました。 最初の頃に比べてると習熟度は上がったと思うのですが、まだまだ知らないことが多くて毎日勉強の日々です。 自分がAndroidアプリ開 …

ProGuardからR8への移行

AndroidStudio 3.4からコードシュリンカー・難読化にR8がデフォルトで使用されるようになりました。 自分が担当していアプリではProGuardは一般的な用途でしか使っていなかったのですが …

AndroidStudioのLayout XMLのフォーマット設定

AndroidStudioで新しいプロジェクトを作るたびにLayout XMLの属性フォーマット設定方法を忘れるのでメモです。 AndroidStudioで以下の設定を開きます。 File | Set …

Android Internal App Sharingのメモ

仕事でGoogle Play ConsoleのInternal App Sharingを使う機会があったのでメモを残します。 ##導入の経緯 アプリでAndroid app Bundleを導入する必要 …

IntelliJ IDEA(AndroidStudio)でもgit rebase squashできるよ!

普段開発しているとGitを使ってバージョン管理することが多いと思います。 その時によくローカルブランチを作って、変更をガンガンコミットしていきます。 ある程度実装してリモートブランチにマージする時に、 …