firebase_auth の使い方

Page content

Flutterfirebase_authパッケージを使ってFirebase Authenticationを使う方法を紹介します。

このエントリーをはてなブックマークに追加

前提

Firebaseプロジェクトを作成して、Flutterから使えるようになってることを前提とします。

まだつけるようになっていない人はこちらの公式ドキュメントを参考に環境を構築してみてください。

使い方

2019/04/08現在の最新版は0.8.4です。こちらで最新版を確認して、最新版をするようにしてください。

pubspec.yamlに以下のようにfirebase_authを追加し、flutter packages getでインストールします。

dependencies:
  firebase_auth: ^0.8.4

ログイン処理を行いたいファイルでfirebase_authをインポートします。これで準備完了です。

import 'package:firebase_auth/firebase_auth.dart';

firebase_authでは以下のログイン方法が提供されています。

  • 匿名ログイン
  • Google ログイン
  • Twitter ログイン
  • Facebook ログイン
  • GitHub ログイン
  • メール/パスワードログイン
  • 電話番号ログイン

それぞれのログイン方法を紹介していきます。

匿名ログイン

匿名ログインはユーザ登録したくない場合に使うログインです。

final FirebaseUser user = await FirebaseAuth.instance.signInAnonymously();_

一度サインアウトしてしまうと違うユーザになってしまうので注意が必要が必要です。

Google ログイン

Google ログインを行う場合google_sign_inも使う必要があります。

google_sign_in | Flutter Packagesを参考にインストールしてください。

2019/04/08現在の最新版は4.0.1+3です。先ほどと同様にpubspec.yamlに以下のようにfirebase_authを追加し、flutter packages getでインストールします。

dependencies:
  google_sign_in: ^4.0.1+3

ログイン処理を行いたいファイルでfirebase_authをインポートします。

import 'package:google_sign_in/google_sign_in.dart';

ログイン処理は次の通りです。

final FirebaseAuth _auth = FirebaseAuth.instance;
final GoogleSignIn _googleSignIn = GoogleSignIn();
final GoogleSignInAccount googleUser = await _googleSignIn.signIn();
final GoogleSignInAuthentication googleAuth = await googleUser.authentication;
final AuthCredential credential = GoogleAuthProvider.getCredential(
  accessToken: googleAuth.accessToken,
  idToken: googleAuth.idToken,
);
final FirebaseUser user = await _auth.signInWithCredential(credential);

_googleSignIn.signIn()の部分でブラウザが開き、ログインを促してきます。 ログインするとアプリ内でもログイン状態になります。

Twitter ログイン

更新予定

Facebook ログイン

更新予定

GitHub ログイン

更新予定

メール/パスワードログイン

更新予定

電話番号ログイン

更新予定

公式ドキュメント

このエントリーをはてなブックマークに追加