snovaのブログ

主にプログラミングやデジタルコンテンツについて書きます。最近はPython, Flutter, VRに興味があります。

Flutterから利用できるFirebaseサービスをカウンターアプリで実践(その他のサービスとまとめ編)

はじめに

Flutterから利用できるFirebaseの機能をカウンターアプリに実装し、内容をまとめたシリーズの最終回です。

今回はこれまで紹介したサービス以外のFirebaseの機能とまとめです。

目次

シリーズの内容

回数 内容 リンク
第0回 準備編 ブログ
第1回 Analytics ブログ
第2回 Firebase Crashlytics ブログ
第3回 Firebase Performance Monitoring ブログ
第4回 Firebase Remote Config ブログ
第5回 Firebase Authentication ブログ
第6回 Cloud Firestore ブログ
第7回 Firebase Realtime Database ブログ
第8回 Cloud Storage for Firebase ブログ
第9回 Firebase Cloud Messaging ブログ
第10回 Firebase In-App Messaging ブログ
第11回 Firebase ML ブログ
第12回 Cloud Functions for Firebase ブログ
第13回 Firebase Hosting ブログ
第14回 Firebaseのその他のサービス イマココ

導入方法

Firebase Dynamic Links(モバイルのみ)

Firebase Dynamic Linksはモバイルのネイティブアプリのリンク先のコンテンツに直接移動するで「ダイナミックリンク」を提供するサービスです。

Flutterでの構築方法はプロジェクトにfirebase_dynamic_linksをインポートし、Firebase Consoleからリンクを作成します。

Firebase App Check

App Checkは、請求詐欺やフィッシングなどの悪用からバックエンドリソースを保護するのに役立ちます。

Flutterでの利用も可能です。

Firebase installations service

Firebase installations serviceはFirebaseのインストールを管理するサービスです。

MessagingAnalyticsなどで使用するFirebase installation IDの確認に使用します。

A/B Testing

A/B Testingはプロダクトとマーケティングのテストを簡単に実行、分析、スケーリングするためのサービスです。 通知、Remote ConfigIn-App Messagingのテストに対応しています。

Google AdMob

Google Admobモバイル広告サービスです。 ただし、FlutterでAdMob広告を開始したい場合はMobile Ads SDK(Flutter)(ベータ版)を利用する必要があります。

Test Lab

Test Labクラウドでホストされているデバイスでアプリをテストできるサービスで、いろんな構成のアプリでテストしたいときに使用できます。 使い方はモバイル向けにアプリをデプロイし、Firebase ConsoleからRobo Testにファイルをアップロードすると、テストできます。

Firebase App Distribution

Firebase App Distributionはテスターにアプリを容易に配布するためのサービスです。Firebase ConsoleFirebase CLIなどからアプリの配布、テスターの管理ができます。

Firebase Extensions

Firebase Extensionsはパッケージ化されたソリューションを使用して、アプリに機能をすばやく追加できるサービスです。 公式のFirebase Extensionsには多くの拡張機能が用意されており、これらの拡張機能Cloud Functions for Firebaseを使用して記述します。

まとめ

Firebaseの機能を追加することに必死で、とても雑なアプリになりました。 もう少し詳しく書きたいので、加筆修正してzennで無料本としてまとめたいなと思います。

また、Firebaseは無料もしくは格安でこれだけのことができるので、今後も積極的に活用したいなと思いました。

GitHubのページを貼ります。

github.com

全体的に参考になったサイト

下記以外では、Stack OverflowFirebaseのGithubなど。

firebase.google.com

flutter.dev

zenn.dev

riverpod.dev

www.flutter-study.dev

追記

どこで書こうか迷っていたら、シリーズ最終回になってしまったので、追記という形で記載します。 Androidで起動したら、以下のエラーで怒られたとき。

FirebaseException ([core/duplicate-app] A Firebase App named "[DEFAULT]" already exists)

このエラーの治し方はネットを見るといろいろありましたが、私の場合、Firebase.initializeAppに名前をつけてあげるとエラーが治りました。

await Firebase.initializeApp(
  name: 'counterFirebase',
  options: DefaultFirebaseOptions.currentPlatform,
);

なお、webだと逆にnameコメントアウトしないと怒られます。

Google Play and the Google Play logo are trademarks of Google LLC.