https://flutter.dev/docs/get-started/test-driveの手順で作成してください。
dependencies:
flutter:
sdk: flutter
firebase_core: ^0.4.0+9 // 追記
cloud_firestore: ^0.12.9+5 // 追記
firebase_auth: ^0.14.0+5 // 追記
このpubspec.yaml
の追記箇所は、プロジェクトごとに必要な項目を設定することになります。
そして、以下コマンドで、Flutterのpackageを入れることができます。
~ flutter packages get
dartファイルでfirestoreのパッケージを上記のようにimportできるようになります。
import 'package:cloud_firestore/cloud_firestore.dart';
firebaseのコンソールから新規プロジェクトを作成しておきます。
特に迷うところはないので説明は割愛します。
https://console.firebase.google.com/
iOSの設定には、iOS bundle ID
が必要です。
以下コマンドで、xcodeを開いて確認しましょう。
~ open ios/Runner.xcworkspace
設定画面でGoogleService-Info.plist
をダウンロードできるので、
Xcodeのプロジェクトのツリー上にRunner/Runner
の配下にダウンロードしてきたGoogleService-Info.plist
をドラッグアンドドロップで設置します。
android/app/src/main/AndroidManifest.xml
のpackageの設定項目にFlutterプロジェクトを作成したときに設定した、
package nameは確認できます。
設定画面よりgoogle-services.json
をダウンロードできるので、
android/app
配下にgoogle-services.json
を設置しましょう。
以下を追記します。
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'com.google.gms.google-services' // 追記
また、64Kを超えるメソッドを使用するアプリ向けにmultidexを有効化しておく必要があります。
android/app/build.gradle
に追記します。
defaultConfig {
applicationId "habit.com.junpeko.flutter_habit"
minSdkVersion 16
targetSdkVersion 28
multiDexEnabled true // 追記
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
参考: https://developer.android.com/studio/build/multidex?hl=ja
buildscript {
repositories {
// ...
}
dependencies {
// ...
classpath 'com.google.gms:google-services:4.3.3' // 追記
}
}
build.gradleファイルに追記したら、設定項目を反映させるために再ビルドする必要があります。
ここで僕ははまりました。
以上がFlutterでFirebaseに接続する際に考慮する点となります。
実際にチュートリアルなどで確認するのが最も手っ取り早く理解はできるかなと思いますので、
興味ある方はやってみてくださいね。
https://codelabs.developers.google.com/codelabs/flutter-firebase/