| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

FlutterFire

提供: MyMemoWiki
2021年7月17日 (土) 00:38時点におけるPiroto (トーク | 投稿記録)による版 (→‎Stableチャネルに切り替え)
ナビゲーションに移動 検索に移動

| Flutter |

FlutterFire

Overview


Firebase CLI


$ npm install -g firebase-tools

Install


  • Migration
  • Firebase のサービスを利用する前に、まず firebase_core プラグインをインストールする必要があります。
  • このプラグインは、アプリケーションを Firebase に接続する役割を果たします。
  • このプラグインをpubspec.yamlファイルに追加します。

pubspec.yaml

dependencies:
  flutter:
    sdk: flutter
  firebase_core: "^1.3.0"
$ flutter pub get

Platform


Android


build.gradle

  • android/build.gradle
buildscript {
  dependencies {
    // ... other dependencies
    classpath 'com.google.gms:google-services:4.3.8'
  }
}
  • android/app/build.gradle
apply plugin: 'com.google.gms.google-services'
"google-services.json" file to the project?

  • https://firebase.google.com/docs/android/setup?hl=ja
  • Firebase Android 構成ファイルをアプリに追加します。
  • google-services.json のダウンロード ボタン をクリックして、Firebase Android 構成ファイル(google-services.json)を取得します。
  • 構成ファイルをアプリのモジュール(アプリレベル)ディレクトリに移動します。

iOS


https://firebase.google.com/docs/ios/setup

fatal error: module 'firebase_core' not found エラー

Error output from Xcode build:
↳
    ** BUILD FAILED **


Xcode's output:
↳
    /Users/hirotoyagi/Workspaces/flutter/tenarai_online/ios/Runner/GeneratedPluginRegistrant.m:10:9: fatal error: module 'firebase_core'
    not found
    @import firebase_core;
$ flutter clean
$ cd ios
$ rm -rf Pods
$ rm Podfile.lock Podfile
$ flutter run
  • Podfile
# Uncomment this line to define a global platform for your project
platform :ios, '10.0'

macOS


  • XCodeで、open ./macos/Runner.xcworkspace/

Flutterfire google plist macos.png

  • GoogleService-Info.plist
    • ダウンロード
    • Runner右クリックからファイルを追加
    • 以下の画面のチェックをONにして追加

Firebase Emulator Suiteの一部を使用して、開発中のローカルマシンでfirebaseサービスをエミュレートしたい場合は、macOSアプリが安全でない接続でローカルネットワークサービスに接続することを許可する必要があります。安全でない接続を許可するには、アプリケーションのplistファイル内に以下を追加

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsLocalNetworking</key>
    <true/>
</dict>
  • 以下のエラーの場合
[!] The FlutterFire plugin firebase_core for macOS requires a macOS deployment target of 10.12 or later.
    • macos/Podfileの修正
platform :osx, '10.12'

Web


初期化


  • Firebaseのサービスを使用する前に、FlutterFireを初期化する必要があります
  • 初期化ステップは非同期なので完了するまではFlutterFire関連の使用を禁止する必要があります。
  • FlutterFireを初期化するには、FirebaseクラスのinitializeAppメソッドを呼び出します

Authentication

Stableチャネルに切り替え

$ flutter channel stable
Switching to flutter channel 'stable'...
git: From https://github.com/flutter/flutter
git:  + 2b9537c783...cc00e7e6bc dev                     -> origin/dev  (forced update)
git:  * [new branch]            dnfield-patch-1         -> origin/dnfield-patch-1
git:  * [new branch]            flutter-2.4-candidate.1 -> origin/flutter-2.4-candidate.1
git:  * [new branch]            flutter-2.4-candidate.2 -> origin/flutter-2.4-candidate.2
git:  * [new branch]            flutter-2.4-candidate.3 -> origin/flutter-2.4-candidate.3
git:  * [new branch]            flutter-2.4-candidate.4 -> origin/flutter-2.4-candidate.4
git:  * [new branch]            flutter-2.4-candidate.5 -> origin/flutter-2.4-candidate.5
git:    52e2ca38fc..2108fbd78d  master                  -> origin/master
git:  + c8311f68be...f4d2c79a6a revert-85466-revert-85221-0624new -> origin/revert-85466-revert-85221-0624new  (forced update)
git:  * [new branch]            revert-86171-revert-83924-textTheme -> origin/revert-86171-revert-83924-textTheme
git:  * [new branch]            revert-86198-deprecate_appbar_backwards_compatibility_flag -> origin/revert-86198-deprecate_appbar_backwards_compatibility_flag
git:  * [new branch]            test                    -> origin/test
git:  * [new branch]            test2                   -> origin/test2
git:  * [new tag]               2.4.0-0.0.pre           -> 2.4.0-0.0.pre
git:  * [new tag]               2.4.0-4.0.pre           -> 2.4.0-4.0.pre
git: Already on 'stable'
git: Your branch is up to date with 'origin/stable'.
Successfully switched to flutter channel 'stable'.
To ensure that you're on the latest build from this channel, run 'flutter upgrade'

pubspec.yaml

  • firebase_authを追記
dependencies:
  flutter:
    sdk: flutter
  firebase_core: "^1.4.0"
  firebase_auth: "^3.0.1"
  • 更新
$ flutter pub get

Web

  • 追記
<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-auth.js"></script>

iOS/macOS

  • cd ios/macos
  • macos 例
$ flutter clean
$ rm -rf Pods
$ rm Podfile 
$ rm Podfile.lock 
$ pod repo update
$ flutter run -d macos
  • Podfile
platform :osx, '10.12'