Google I/O 2022 にて、Firebase で行ってきたアップデートについてお知らせできるのが楽しみです。過去数年間で、アプリは私たちの日々の生活に欠かせないものになりました。なぜなら、毎日のタスクがシンプルになるだけでなく、アプリは私たちに情報を提供し、娯楽を与え、つながりをもたらしてくれるからです。だからこそ私たちは、皆さんに必要なツールとリソースを提供することで、ユーザーに愛用してもらえる必携のアプリを構築、拡大できるようにしています。
スタートアップ企業から大企業まで、300 万人以上のデベロッパーが Firebase を使って数十億人のユーザーにリーチし、魅力的なサービスを提供しています。Google は、Firebase を開発者の皆さんのニーズに適したプラットフォームに進化しようとしています。その原動力になっているのは、皆さんから寄せられる信頼です。今年の Google I/O では、アプリ開発を加速し、安心してアプリを運営できるように、Firebase とよく使われる Google デベロッパー プロダクトとの統合を強化し、このプラットフォームとオープンなツールのエコシステムとの連携を改善します。Google の目標は、皆さんにシームレスで安全な体験を提供し、ユーザーやビジネスにとってできる限り最適なアプリを集中して作れるようにすることです。本記事では新機能について説明しますが、テクニカル セッションや Codelab も漏らさずにご確認ください。また、Firebase のバーチャル Adventure ドームに立ち寄ることもできます!
時間がない方は、特定のセクションにジャンプできます。そうでない方は、ぜひ記事全体をお読みください。
アプリ開発を加速し、スピーディにマーケットに提供する
- Flutter の公式サポート、ドキュメント、障害レポートの改善
- Firebase Apple SDK 全般で最新の Swift をサポート
自信を持ってアプリを運営し、充実したエクスペリエンスを提供する
- ベータ版テストを簡単にする App Distribution
- Crashlytics と Android & Play の連携でトラブルシューティングを効率化
アプリ開発を加速し、スピーディにマーケットに提供する
Firebase はフルマネージドなインフラストラクチャを提供するので、皆さんは一番重要なことに集中し、短時間で安全かつ効率的にアプリを開発、運営できます。
カスタマイズの幅を広げる新しい拡張機能
Firebase Extensions は、コードのバンドルをあらかじめパッケージ化したものです。さまざまなサードパーティ API を学ばなくても、簡単に最低限のコードで、皆さんが信頼する Google などの企業が提供するコア機能をアプリに追加できます。今回、拡張機能の導入をお知らせします。この機能を利用すると、拡張機能のランタイムに独自のコードをプラグインし、機能を拡張できます。拡張機能によって、統合機能を土台として、その上にカスタムのユースケースやビジネス ワークフローを構築できるようになります。たとえば、サブスクリプションの課金に Run Payments with Stripe 拡張機能を使っている場合、独自のカスタムコードを記述して、お客様が支払いをキャンセルしたときに割引を提示することができます。
|
| 拡張機能を使って拡張機能のランタイムにフックし、カスタムのユースケースをセットアップ。たとえば、お客様がキャンセルしたときにプロモーション メールを送ることが可能 |
さらに、マーケティング、検索、決済処理を行うサードパーティ拡張機能のリリースについてもお知らせします。Snap による 2 つの新しい拡張機能を使うと、Snap にログインして、Snap のストーリーでプロダクトを宣伝できます。新しい Stream 拡張機能を使うと、アプリ内でチャットを実装し、リアルタイムでユーザーに応答できます。RevenueCat は、アプリ内サブスクリプションの管理に便利です。また、Typesense は、Cloud Firestore のインデックス作成や検索をオープンソースで実装したい場合に選択肢となります。
|
パートナーが作成した新しい拡張機能。はるかに短い時間で、アプリにマーケティング、検索、決済処理を追加できる |
さらに、すべての拡張機能がエミュレータ スイートで利用できるようになっています。そのため、安全なローカル環境でテストしたり、機能の理解を深めたり、容易に調整したりできます。拡張機能をインストールするには、Google のウェブサイトか Firebase コンソールで Extensions ページを開いてください!
アプリのデプロイを高速化するウェブのアップデート
多くの開発者は、パフォーマンスがよく、スケーラブルで見栄えのよいウェブアプリを開発してデプロイするために、React、Angular、Vue、Next.js、Nuxt などのウェブ フレームワークを使っています。皆さんからは、Firebase でこういったアプリをもっと簡単にデプロイできるようにしてもらいたいというフィードバックが寄せられていました。そこで、firebase deploy コマンド 1 つで最新のウェブアプリをデプロイできるようにしました。これにより、バックエンドの詳細を気にする時間を減らし、ウェブアプリの機能開発にかける時間を増やせるようになります。Firebase Hosting にウェブアプリをデプロイすれば、世界規模の高速な CDN、すぐに利用できるセキュリティ、このプラットフォームならではの従来からの使いやすさをフル活用できるからです。最新の Firebase CLI をダウンロードすると、さっそく今日から Next.js と Angular Universal のデベロッパー プレビュー版を試すことができます。対応フレームワークは、今後さらに増える予定です。
|
| お気に入りのウェブ フレームワークで開発した最新のウェブアプリをコマンド 1 つでデプロイし、時間を節約して悩みの種を解消 |
Flutter の公式サポート、ドキュメント、障害レポートの改善
Flutter は Google のオープンソース フレームワークであり、1 つのコードベースから、ネイティブ コンパイルが可能な美しいマルチプラットフォーム アプリを構築できます。これは、クロスプラットフォーム バックエンド サービスである Firebase にとって自然な補完です。Flutter のすべての Firebase プラグインは、一般提供版になっています。また、安心して Flutter と Firebase を併用できるように、公式 Flutter ドキュメント、スニペット、カスタマー サポートも追加しています。
さらに、Flutter アプリの Crashlytics サポートを強化して安定性の問題をすばやく追跡、監視、修正できるように、3 つの大きなアップデートを行いました。
- 初期利用に必要な手順を大幅に減らし、プラットフォーム固有の IDE を開かなくてもいいようにしました。Crashlytics プラグインを追加して Dart コードで初期化するだけで利用できます。
- 重要な問題が発生したときに Flutter アプリからオンデマンドで致命的なエラーを記録し、Crashlytics からアラートを受信できるので、多数のユーザーに影響を及ぼす前に問題を解決できます。
- バックエンドのクラッシュ分析ツールを刷新し、共通の基本特性を使って Flutter のクラッシュをこれまで以上に直感的にグループ化できるようにしました。これにより、どんな種類のクラッシュがアプリに影響しているかをさらに深く理解できます。
アプリに最新バージョンの "Crashlytics for Flutter" プラグインを追加すると、以上のアップデートを利用できます。詳しくは、ドキュメントをご覧ください。
|
これまで以上にシームレスになった Firebase と Flutter を使うと、最低限の作業とコードで、さまざまなプラットフォームのユーザーにアプローチできる高品質なアプリを開発可能 |
Firebase Apple SDK 全般で最新の Swift をサポート
最新の Swift 言語をすべて利用できるように Firebase をアップデートしています。そのため、Apple デベロッパーが Firebase プラットフォームで最新の Swift 機能を利用できるようになります。たとえば、Codable を使って安全でコンパクトなコードにしたり、Firebase の async/await API を使ってエラーにつながりやすいコールバック ブロックのネストを解消したりできます。次の例では、20 行のコードがわずか 4 行になっています。
SwiftUI を使っている方は、カスタムの View Modifier を使ってアナリティクス用にビューを識別したり、FirestoreQuery プロパティ ラッパーを使ってビューを Firestore のデータに簡単にバインドし、リアルタイムで更新したりできます。コミュニティからのありがたい貢献のおかげで、Firebase 8 SDK リリースの Swift サポートのロールアウトはもう始まっています。Firebase 9 SDK リリースのサポートも、今年を通して拡大を続ける予定です。プロジェクトにライブラリをインストールする方法を知りたい方は、GitHub リポジトリをご覧ください。
App Check のセキュリティ強化
Firebase App Check は、不正課金、フィッシング、アプリの偽装、データの盗難や汚染といった脅威からバックエンド インフラストラクチャを守ります。これは、着信するトラフィックが正規のデバイスにインストールされたアプリから来ていることを証明し、有効な認証情報を持たないトラフィックをブロックすることで実現しています。この度、App Check が Android デバイスの最も高度なアプリの最新構成証明プロバイダである Play Integrity API と連携するようになり、不正使用防止シグナルがさらに増加したことをお知らせします。さらに、App Check はベータ版を卒業して一般提供版になり、主要なコンプライアンスやセキュリティ標準の認証を取得しています。Firebase コンソールで App Check にアプリを登録し、アプリやリソースを保護しましょう。App Check の詳細については、ドキュメントをご覧ください。
一般提供版になった App Check。Play Integrity API と連携し、Android デバイスに追加のセキュリティを提供する
自信を持ってアプリを運営し、充実したエクスペリエンスを提供する
Firebase では、実用的な知見と使いやすいツールが提供されるので、リリース時もその後も、アプリのエクスペリエンスを最適化する判断を自信を持って行うことができます。
ベータ版テストを簡単にする App Distribution
見逃していたバグがユーザーに発見され、アプリストアに否定的なレビューが掲載されないようにするには、一般公開リリースの前にアプリをテストすることが重要です。Firebase App Distribution は、リリース前バージョンのアプリを信頼できるテスターに配布し、リリース前に貴重なフィードバックを得る際に役立ちます。App Distribution は、ベータ版を卒業して一般提供版になっています。また、テスト ワークフローがさらに効率化され、ニーズに合わせてカスタマイズできる新機能も搭載されています。具体的には、コンソールと新しい一般公開 API の両方に、シンプルになったグループ アクセス、リリースの自動削除、一括テスター管理を追加しています。新しい Android SDK では、新しいバージョンが利用できるようになったことをアプリ内から直接テスターに通知できるので、テスターは常に最新版を使い、最も重要なバージョンのフィードバックを提供できます。使ってみるには、Android と iOS のドキュメントをご覧ください。
|
| App Distribution が一般提供版になり、テスト ワークフローがさらに効率化され、ニーズに合わせてカスタマイズできる新機能も搭載 |
Performance Monitoring の新しいリアルタイム アラート
Firebase Performance Monitoring はアプリのパフォーマンスについてのデータを収集して提示してくれるので、アプリで厳密に何が起きているのかや、アプリが遅いとユーザーが感じたタイミングをユーザー視点で把握することができます。数か月前には、アプリの起動時間に影響する可能性があるレイテンシの問題についてお知らせできるように、パフォーマンス アラートをリリースしました。この機能の一部がベータ版を卒業して一般提供版になるにあたり、アプリの重要な部分の大半で、カスタムコードのトレース、ネットワーク リクエスト、画面レンダリング、ウェブトレースの新規アラートを設定し、そのしきい値をカスタマイズできるようになります。パフォーマンス アラートを使うと、ユーザーに問題が発生したときに最初に知ることができるので、安心してアプリをリリースできます。さっそくドキュメントの手順に従ってアラートを設定してみてください。
|
Performance Monitoring のリアルタイム アラートを使うと、設定したしきい値に基づき、パフォーマンスやレイテンシの問題について通知を受け取ることができる |
Crashlytics と Android & Play の連携でトラブルシューティングを効率化
Firebase Crashlytics を使うと、アプリの安定性を把握できるので、バグがたくさんのユーザーに影響を与える前に、バグの追跡や優先順位付け、修正ができます。ただし、リアルタイムの詳細な障害レポートがあっても、トラブルシューティングをする場合は、Crashlytics コンソールと IDE を行き来してエラーを見つけ、デバッグしなければならないのが一般的です。これがストレスのたまる操作であることは承知しています。ブラウザでスタック トレースを確認し、コードをあちこち移動して、ブレークポイントを設定すべき場所を探すのは難しいことです。そこで、Android Studio に新しい App Quality Insights ウィンドウを導入します。これを使うと、ローカル Android Studio プロジェクトのコンテキストから Crashlytics で報告された問題を見つけ、調査して再現できます。さらに、障害レポートに登場した問題のある行のコードを強調してくれるので、機能を開発しながら問題を修正できます。
|
| ローカル Android Studio プロジェクト内で新しい App Quality Insights ウィンドウを使い、Crashlytics で報告されたクラッシュを調査、再現、修正
|
この機能を一足先に Adobe に紹介したところ、次のような反応でした。
「この新しい IDE 連携はもう手放せません。とても悩ましかった問題の 1 つを直接解消してくれます。余計な時間を費やして、コンソールからクラッシュを検索してコードベースと結びつける必要はもうありません」
- Adobe Acrobat
最新の Android Studio Electric Eel のカナリア版をダウンロードして、さっそくこの機能をお試しください。
この機能をベースに、Crashlytics と Google Play を連携させ、Crashlytics の障害レポートを Play トラックでフィルタリングできるようにしています。これにより、クラッシュ イベントが内部テスト、オープンテスト、本番環境のどれによるものかを簡単に識別できます。この機能を使うには、Crashlytics ダッシュボードを開いてアプリを Google Play にリンクします。
|
Google Play トラックに基づいて Crashlytics の障害レポートをフィルタリングし、さまざまなリリース ステージで問題の優先順位付けや管理を行う |
シームレスで安全な開発エクスペリエンス
私たちは、最短距離で成功に向かうシームレスで安全なエンドツーエンドの開発エクスペリエンスを提供したいと考えています。それを実現するため、Firebase と Google でとりわけ人気のあるデベロッパー プロダクトとの統合を強化し、このプラットフォームとオープンなツールのエコシステムとの連携を改善することに注力しています。皆さんが開発のどのステージにあっても、Firebase がアプリ開発の困難な部分に対応してくれるので、皆さんは最高のアプリを作ることに集中できます。以上でお知らせした内容についてもっと詳しく知りたい方は、Google I/O 2022 のテクニカル セッションや Codelab、デモをご覧ください。次にリリースされる予定の機能を一足先に見てみたい方は、アルファ版プログラムにご参加ください。
そしていつものように、YouTube チャンネルに登録したり、ブログや Twitter をフォローしたりすると、すべての Firebase プロダクトの使用に関する最新ニュースやベスト プラクティスを受け取ることができます。