LoginSignup
0
0

FlutterFlowとFirebaseで簡単! 認証画面作成のステップバイステップガイド

Last updated at Posted at 2024-05-13

はじめに

今回はFlutterFlowとFirebaseを使って認証画面を作成する方法をステップバイステップで説明します。FlutterFlowは、コードを書く必要なく、視覚的に操作できるUIデザインツールです。そのため、初心者でも簡単に認証画面を作成することができます!

FlutterFlow概要

FlutterFlowは、ユーザーが視覚的なインターフェースを使用してモバイルアプリケーションを開発できるドラッグアンドドロップのWebベースのIDE(統合開発環境)です。Flutterフレームワークをベースにしており、主にFlutterアプリのプロトタイピングや開発を迅速かつ簡単に行うことができます。プログラミングの経験が少ないユーザーや、開発時間を短縮したい経験豊富な開発者にも適しています。

FirebaseとFirebase Authentication概要

Firebaseはアプリ開発を支援するためのGoogleのプラットフォームです。リアルタイムデータベース、認証、アナリティクス、ファイルストレージなど、多様な機能を提供しており、開発者が効率的にアプリケーションを構築し運用を楽にしてくれます。
Firebase Authenticationはその名の通りFirebaseの一部であり、さまざまな認証方法をサポートしています。以下はFirebase Authenticationの主な特徴です。

  • 多様な認証オプション: メールアドレスとパスワード、電話番号認証、そしてGoogle、Facebook、Twitter、GitHubなどのソーシャルメディアアカウントを使用したログインが可能です。また、匿名認証もサポートしており、ユーザーがアカウントを作成せずにアプリを試すことができます。
  • 統合と拡張性: 他のFirebaseサービスやGoogle Cloud Platformとシームレスに統合されており、アプリの拡張に伴い他の機能と連携しやすい設計になっています。
  • カスタム認証システムのサポート: 既存の認証システムと連携するためのカスタム認証トークンを生成する機能も提供しています。これにより、特定の認証要件に合わせた柔軟な認証フローを実装することが可能です。
  • セキュリティとコンプライアンス: 業界標準のセキュリティプロトコルを使用しており、ユーザーデータの安全を保つための強固なセキュリティ対策が施されています。
  • ユーザー管理: Firebaseのコンソールを通じて、ユーザー情報の管理やアクセス権の調整が簡単にできます。開発者はユーザーのログイン方法、アクティビティ、アクセス権限などを詳細に管理することができます。
  • クライアントライブラリとSDK: iOS、Android、Webアプリケーション向けに提供されるSDKを通じて、認証機能をアプリに簡単に組み込むことができます。

前提

FlutterFlowFirebaseはそれぞれ利用できる状態であることが前提です。

今回のやること概要

今回の流れはざっくり以下のような感じです。

  • FlutterFlowプロジェクトの作成
  • Firebaseプロジェクトの作成
  • Firebase Authenticationの認証設定(Firebase Storageの設定も含む)
  • FlutterFlowで認証画面を作る

FlutterFlowで新規プロジェクトを作成する

画面右上の「+ Create New」ボタンをクリック。
image.png

任意のプロジェクト名を入力して、「Create Blank」をクリック。
image.png

Setup FirebaseをONにして「Next Step」をクリック。
image.png

「Create Project」をクリックすることで、Firebaseのプロジェクトをここで追加できます。便利ですね。
(既存のプロジェクトを利用する場合、Enter your Firebase Project ID...に既存のプロジェクトIDを入力してConnectしましょう!)
image.png

Firebaseのプロジェクト名、リージョン選択をしてFirebaseのプロジェクトを作るGoogleアカウントでSign inします。
image.png

しばらくすると、Firebaseプロジェクトが作られます。

Firebaseで認証設定

次にFirebaseで認証設定をするため、「Enable Auth On Firebase」をクリックしてください。
image.png

「始める」をクリック。
image.png

Firebaseは色々と認証機能を提供してくれていますが、今回はシンプルにメアドとパスワード、Googleでの会員登録とログインの実装にします。

メール/パスワードの認証を設定

まずは「メール/パスワード」をクリック。
image.png

有効にして「保存」をクリック。
image.png

これでメアドとパスワードの設定は完了したので、Googleも追加しましょう。

Googleの認証を設定

「新しいプロバイダを追加」をクリック。
image.png

「Google」をクリック。
image.png

Googleを有効にして、プロジェクトの公開名、サポートメールを設定して、「保存」をクリック。
image.png

Firebase Storageの設定

次にFirebase Storageの設定です。

image.png

「始める」をクリック。
image.png

今回はFlutter Flowでお試しするだけなので、「テストモードで開始する」を選択して「次へ」をクリック。
image.png

「完了」をクリック。
以上でStorageの設定は完了です。
image.png

認証画面を作る

いよいよFlutter Flowでの作業です!
まずは「Start Building」をクリックしてプロジェクトセットアップを完了しましょう。
image.png

いよいよそれっぽい画面が表示されます!
いきなり警告やエラーのような表示があり、色々気になるボタンはありますが、一旦我慢して画面を作りましょう!
image.png

画面左側のサイドメニューの右上のアイコンをクリック。
image.png

プロジェクトエクスプローラーみたいな表示になった後、画面左側のサイドメニューの右上のアイコンをクリック。
image.png

色々な画面テンプレートが用意されていてすごいですねー。
一旦適当にAuth2を選んでみます。
image.png

「Default Theme」をクリック。
image.png

今回はお試しなのでデフォルトのページ名のままで「Create Page」をクリック。
image.png

これで画面ができてしまいました。めちゃくちゃ早いですね!
image.png

今回Appleは対応してないので、ボタンを消しましょう。
Continue with AppleをクリックしてDeleteキーで消します。
image.png

Log In側も同様にAppleを消します。
image.png

メール/パスワードの認証処理の設定

認証処理の実装ではなく、設定。というのがいいですね。

画面左側のアイコンをクリック、「Authentication」をクリック。
image.png

警告が出ているので、クリックしてFirebase設定を終わらせます。
image.png

「Auto Generate Config Files」をクリック。
image.png

「Generate Files」をクリックして完了です。
image.png

次にStorageの「Deploy」をクリック。
image.png

画面左側のFirestoreアイコンをクリック。
image.png

今回はお試しなので、Deleteのところに対して警告が出ているところだけ対応しちゃいます。Deleteのところを「No One」に変更。
image.png

Firestore Rulesの「Deploy」をクリックしてFirestoreの設定が完了です。
image.png

では、Authenticationに戻って、Entry PageとLogged In Pageを設定します。
Entry Pageに追加したAuth2を、ログイン後の画面としてHomePageを設定します。
image.png

認証後の画面をちょっとだけ修正

認証後の画面に認証されたということが分かるように何かしらの認証後の情報を表示して、ログアウトボタンもつけておきましょう。
まずはデフォルトで用意された画面を開きます。
image.png

次にWidgetパレットをクリック。
image.png

テキストを画面の適当なところにD&Dします。
image.png

ちょっと細かいところですが、画面右側のTextの設定のスクショの赤枠のところをクリック。
image.png

表示されたポップアップメニューの中の「Authenticated User」をクリック。
image.png

今回はDisplay Nameを表示します。
image.png

次にログアウトボタンを追加します。
画面左側のWidgetからButtonを画面の適当なところへ。
image.png

ボタンのテキストをログアウトにします。
image.png

次にボタンのアクションを設定します。
スクショの順番でまずはログアウトアクションを設定します。
image.png

さらにログアウト後に認証前の画面に戻すために追加のアクションを設定します。
image.png

まずは画面右側のNavigate AutomaticallyをOFFにしましょう。
image.png

画面中央に戻り、「+」をクリックして「Add Action」をクリック。
image.png

Navigate Toの中の「Auth2」をクリック。
image.png

認証後の画面には戻したくないので、Allow Back NavigationはOFFにします。
image.png

アプリを動かす

けっこう長くなってしまいましたが、慣れるとかなりさくっと作れると思います!
画面右上のアイコンをクリックしてアプリを実行しましょう!!
image.png

しばらく待つと以下のような画面が表示されます。
image.png

メアドとパスワードで会員登録をするとFirebaseにも反映されるはずです。
image.png

まとめ

FlutterFlowを使って認証画面を作成する方法を説明しました。FlutterFlowを使うことで、コードを全く書かずに、簡単に認証画面を作成することができます。業務で使えるのか?というところは一旦おいておくとして、とりあえずなんかサクッと動くもの見たいんだよね。という時にはかなりいい感じだと思います。ぜひお試しを!

参考ドキュメント

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0