Google I/O 2024: Android 開発ツールの新機能

5月 16, 2024
Mayank Jain Product Manager Android Studio

Google I/O 2024 では、すばやく簡単に Android 開発を行えるようにするエキサイティングな新機能やツールを発表しました。また、Android エコシステム全体で AI を活用して高品質な Android アプリを簡単に開発できるように、Android Studio のアップデートについてもお知らせしています。

Google I/O 2024 の Android デベロッパー ツールの新機能セッションでは、新機能の一部が動作する様子を確認できます。また、プレビュー リリース チャンネルで Android Studio Koala 🐨 の Feature Drop をダウンロードして試してみることができます。発表の内容はこちらからご覧ください。

Link to Youtube Video (visible only when JS is disabled)

Android Studio で Gemini を活用する

昨年 Android Studio に AI 機能をリリースして以来、基礎となるモデルを進化させ、フィードバックを組み込み、多くの国と地域に拡大し、ワークフローに AI を活用して Android アプリ デベロッパーの生産性を向上させています。内蔵されている AI プライバシー管理を使うと、皆さんの Android アプリ プロジェクトにぴったりの最新 AI 機能改善を導入できます。


Android Studio での Gemini によるコード提案

Android Studio から Gemini のカスタム プロンプトを生成し、コードを提案します。[View] > [Tool Windows] > [Gemini] ツール ウィンドウで Gemini を有効にし、コードエディタで右クリックして、コンテキスト メニューから [Gemini] > [Transform selected code] を選択してプロンプト フィールドを表示します。そして、新しいコードを追加するか、選択したコードを変換するプロンプトを Gemini に渡すと、コードが提案されます。複雑なコードを書き直してシンプルにしてもらったり、「このコードをイディオマティックにする」といった固有のコード変換を行ったり、説明に基づいて新しい関数を生成したりすることができます。Android Studio での Gemini によるコード提案はコード差分として表示されるので、必要な提案のみを確認して適用できます。

Android Studio での Gemini によるコード提案

Gemini によるクラッシュ レポート推奨事項

Android Studio の App Quality Insights は、Firebase Crashlytics と Android Vitals の両方のデータを Android Studio にシームレスに組み込む機能です。これにより、ツールを切り替えることなく、アプリで最も重要になる安定性関連情報にアクセスできます。

Android Studio では、Gemini を使ってクラッシュ レポートを分析したり、Gemini ツール ウィンドウに分析情報を表示したり、クラッシュのサマリーを作成したりできるようになります。可能な場合は、サンプルコードや関連ドキュメントへのリンクなど、推奨される次のステップも表示できます。

[View] > [Tool Windows] > [Gemini] から Gemini を有効にすると、こういったすべての情報を Android Studio の [App Quality Insights] ツール ウィンドウから直接生成できるようになります。

io-aqi-gemini-crash-analysis
Gemini によるクラッシュ レポート推奨事項

スターター テンプレートを使ってアプリに Gemini API を組み込む

Android Studio で提供される新しいスターター アプリ テンプレートを使うと、アプリで Gemini モデルのプロトタイピングを始めることができます。このアプリ テンプレートでは、Gemini API に直接プロンプトを発行したり、画像ソースを入力に追加したり、画面に応答を表示したりできます。さらに、Google AI Studio を使って、アプリのカスタム プロンプトを作成することもできます。

Google Cloud インフラストラクチャを使って AI 機能を本番環境に拡張する準備ができたら、Vertex AI から Gemini モデルの強力な機能にもアクセスできます。Vertex AI は、Google のフルマネージド開発プラットフォームで、生成 AI の開発およびデプロイ用に設計されています。世界クラスの推論機能が必要なだけでも、Vertex でエンドツーエンドの AI ワークフローを構築したい場合でも、Gemini API は優れたソリューションになります。

gemini-template-3
スターター テンプレートを使ってアプリに Gemini API を組み込む

Gemini 1.5 Pro が Android Studio に登場

以前の発表でお知らせしたのは、Android Studio の Gemini では、Android 開発に関する質問への回答、コードの生成、リソースの検索、ベスト プラクティスの説明などに Gemini 1.0 Pro モデルを使うことでした。今回の Android Studio の Gemini のプレビュー段階では、当面の間、すべてのユーザーに Gemini 1.0 Pro を無料提供します。Gemini 1.0 Pro は汎用性の高いモデルで、スケーリングに最適です。ただし、回答の質が制限される可能性があることは、私たちも認識しています。私たちは、皆さんからのフィードバックに基づいて Android 開発の品質向上に取り組んでいます。デベロッパー エクスペリエンスの生産性向上を図るため、Gemini を使ってさらに多くの機能を追加できることを楽しみにしています。

その過程と合わせて、今年は、Gemini 1.5 Pro モデルが Android Studio に登場する予定です。ラージ コンテキスト ウィンドウを持つこのモデルでは、特に質の高い応答が期待できます。皆さんもご覧になったかもしれませんが、Google I/O 2024 のセッションで紹介したマルチモーダル入力などのユースケースを実現できます。Android Studio からさらに高機能なモデルにアクセスする方法については、今後の最新情報でお伝えします。


生産性の向上

Firebase によるリリース モニタリング

本日、Firebase リリース モニタリング ダッシュボードを一般提供したことをお知らせしました。Firebase リリース モニタリング ダッシュボードは、Firebase Crashlytics を利用したダッシュボードで、これ 1 つだけで Android アプリの最新本番リリースをモニタリングできます。ここには特に重要なリリース指標の概要が表示され、リアルタイムで更新されます。たとえば、以前のリリースを基準値として、クラッシュが発生しなかったセッション数、比較、ベンチマークなどを確認できます。


Android デバイス ストリーミング

Android デバイス ストリーミングは、Firebase の機能を利用して、Google のデータセンターにホストされている Android の実機にリモートから安全に接続します。これにより、Google Pixel 8、8 Pro、Pixel Fold など、一部の最新の Android の実機でアプリを簡単にテストできます。

すでに利用できる 20 以上のデバイスモデルに加えて、本日より、以下のデバイスを Android デバイス ストリーミングに追加します。

  • Samsung Galaxy Fold5

  • Samsung Galaxy S23 Ultra

  • Google Pixel 8a

さらに、Firebase を初めて使う場合は、Koala の Feature Drop にログインして Android Studio でデバイス ストリーミングを行う際に、無料の Firebase プロジェクトが自動で作成および設定されるので、必要なデバイスをストリーミングするまでの時間を大幅に短縮できます。Android デバイス ストリーミングの割り当てについては、詳細をご覧ください。期間限定で利用できる Firebase Blaze プランのプロジェクトのプロモーション割り当てについても、ここに記載されています。

io-device-streaming
Firebase の機能を利用した Android デバイス ストリーミングで、最新の Android の実機に瞬時に接続

USB ケーブルの速度検出

USB ケーブルの帯域幅は、480 Mbps(USB-2)から最大 40,000 Mbps(USB-4)まで、さまざまであることをご存知でしょうか。Android Studio Koala の Feature Drop なら、低パフォーマンスと高パフォーマンスの USB ケーブルを簡単に区別できます。

Android デバイスを接続すると、Android Studio はデバイスと USB ケーブルの帯域幅を自動的に検出し、USB 帯域幅が一致しない場合に警告します。

注: USB ケーブルの速度検出には、Android SDK Platform Tools v34 以降に搭載されている更新版の ADB が必要です。現在のところ、これは macOS と Linux で利用できます。

usb-speed
USB ケーブルの速度検出。*

Android Studio から Google にログインする新しい方法

1 回の認証操作で、複数の Google サービスに簡単にログインできるようになります。Android Studio の Gemini でも、Firebase の Android デバイス ストリーミングでも、Google Play の Android Vitals レポートでも、すべての便利なサービスで新しいログインフローを使って簡単に起動して実行できます。初めて Firebase で Android デバイス ストリーミングを使う場合でも、Android Studio が自動的にプロジェクトを作成してくれるので、すぐに Firebase の実機からストリーミングを始めることができます。細かい権限スコープを設定すれば、アカウントにアクセスできるサービスを常に管理できます。プロフィール アバターをクリックしてデベロッパー アカウントでログインするだけで使うことができます。

google-login
Android Studio から Google にログインする新しい方法

デバイスの UI 設定のショートカット

デバイスの UI 設定のショートカットを使って、ダークテーマ、フォントサイズ、ディスプレイ サイズ、アプリの言語などに関連するデバイス設定を簡単かつ希望どおりに設定できるようになります。この操作はすべて、[Running Devices] ウィンドウから直接行うことができます。皆さんのユースケースで必要になるどのようなシナリオでも、シームレスな UI のテストやデバッグが可能です。

デバイスの UI 設定のショートカット

タスク中心のアプローチによるプロファイラの高速化と改善

Android Studio のプロファイラの内部が大幅に改善されました。プロファイル可能なアプリでシステム トレースをキャプチャする場合など、よく使われるプロファイル タスクの起動が最大 60% 高速になっています。1

プロファイラを再設計し、アプリの CPU、メモリ、電力使用量のプロファイルなど、関心のあるタスクを簡単に開始できるようにしています。たとえば、プロファイラを開いたときの UI から、システム トレースを行うタスクをすぐに開始できます。このトレースは、アプリの起動時間のプロファイルや改善に役立てることができます。

profiler
タスク中心のアプローチによるプロファイラの高速化と改善。

Google Play SDK Index との連携

アプリで使われている SDK にポリシーやバージョンに関する既知の問題がある場合、Android Studio が Google Play SDK Index と連携して通知してくれます。この情報をもとに依存関係を更新することで、アプリの新しいバージョンを公開できなくする可能性がある問題を回避できます。

Android Studio Koala の Feature Drop リリースでは、さらに連携が強化され、Google Play SDK Console の警告も含まれるようになっています。そのため、アプリを Google Play Console に送信する前に、依存関係に潜んでいるバージョンやポリシーの問題を完全に把握できます。

時間を節約するため、SDK 作成者からのメモも Android Studio に直接表示されるようになっています。

sdk-index
対応する SDK 作成者のメモを含む SDK Index からの警告

Wear OS アプリのプレビュー タイル

Android Studio でタイルのプレビューがサポートされます。デバイスでタイルを動作させなくても、さまざまな構成でタイルがどのように見えるかをすばやく確認できるので、タイルを作成するときに行う反復作業がはるかに高速になります。

wear-tile-preview
Wear OS アプリのタイル プレビューの使用例

Wear OS アプリのテスト用に模擬センサーデータを生成

実際のシナリオのシミュレーションに役立つように、Wear OS エミュレータで模擬(合成)データを生成できるようになりました。対象になるのは、心拍数、速度、歩数などの健康関連センサーのデータです。これにより、マルチスポーツ トレーニング セッションのテストを数分で設定して実行できるようになります。デスクを離れることなく、すべて Android Studio の中でエンドツーエンドで行うことができます。

Wear OS アプリのテスト用に模擬センサーデータを生成

Compose Glance ウィジェットのプレビュー

Android Studio Koala の Feature Drop を使うと、IDE の中で Jetpack Compose Glance ウィジェット(1.1.0-rc01)を直接簡単にプレビューできます。開発プロセスの早い段階で UI に潜んでいる問題をキャッチし、ウィジェットの外観を調整しましょう。使ってみたい方は、詳細をご覧ください。

Glance-widget-preview
Compose Glance ウィジェットのプレビュー

Compose のライブ編集をデフォルトで有効化

Compose のライブ編集は、エミュレータや実機で実行しているアプリにコードの変更を自動デプロイすることで、Compose 開発エクスペリエンスを高速化します。ライブ編集は、新しいコンポーザブル、修飾子の更新、アニメーションなど、UX 要素の更新がアプリ全体のエクスペリエンスに及ぼす影響を確認する際に便利です。ライブ編集を使いこなせるようになるにつれて、さまざまな創造的な方法を見つけて、開発エクスペリエンスと生産性を向上させることができるようになります。

Android Studio Koala の Feature Drop では、ライブ編集がデフォルトで手動モードで有効になります。また、安定性も向上し、import 文がサポートされるなど、確実に変更を検出できるようになっています。

Compose プレビュー スクリーンショット テスト プラグイン(アルファ版)

ホスト側でのスクリーンショット テストは、UI をテストしてリグレッションを防ぐための簡単で強力な方法です。本日より、Compose プレビュー スクリーンショット テスト プラグインの最初のアルファ版が独立したプラグインとして利用できるようになります。このプラグインは、AGP 8.5.0-beta01 以降と合わせて利用できます。Compose プレビューを src/main/screenshotTest フォルダに追加し、UI を更新したときに差分レポートを生成するタスクを実行します。生成された HTML テストレポートから、アプリの UI の変更を視覚的に検出できます。

このアルファ版のプラグインは、反復作業とフィードバックを高速化するために設計されています。将来的には AGP にマージし直す予定ですが、現時点では、この独立したプラグインを使ってすばやく機能を試し、改善できるようにしています。使ってみたい方は、詳細をご覧ください。

compose-preview-screenshot-testing
Now in Android アプリの Compose プレビュー スクリーンショット テスト

IntelliJ プラットフォーム アップデート(2024.1)

Android Studio Koala の Feature Drop には、IntelliJ 2024.1 プラットフォーム リリースが含まれています。これには、非常に便利ないくつかの IDE の改善が含まれています。

  • ビジュアルと機能の両面でターミナル機能が刷新され、コマンドライン タスクの効率が向上します。詳しくは、こちらのブログ投稿をご覧ください。

  • 固定行と呼ばれるエディタの新機能により、大きなファイルの操作や新しいコードベースの確認が簡単になります。スクロールするときに、クラスやメソッドの先頭といった主要な構造要素がエディタの上部に固定されるので、その行をクリックしてコードをすばやく移動できるようになります。

  • Java と Kotlin では、プロジェクトのインデックス作成中に、コードの強調表示や補完などの基本的な IDE 機能が動作するようになり、起動時のエクスペリエンスが向上します。

  • IDE を 90%、80%、70% に縮小できるようになります。これにより、IDE 要素のサイズを柔軟に拡大縮小できるようになります。

こちらの IntelliJ 詳細リリースノートをご覧ください。


まとめ

Android Studio カナリア版チャンネルで、Android Studio Koala の Feature Drop(2024.1.2)が利用できるようになりました。以下の機能が含まれています。

Android Studio の Gemini

  • Android Studio での Gemini によるコード提案

  • Gemini によるクラッシュ レポート推奨事項

  • Gemini API スターター アプリ テンプレートによるアプリへの Gemini の組み込み(Koala 2024.1.1 でも利用可能)


生産性の向上

  • Firebase によるリリース モニタリング

  • Android デバイス ストリーミング

  • USB ケーブルの速度検出

  • Android Studio から Google にログインする新しい方法

  • デバイスの UI 設定のショートカット

  • タスク中心のアプローチによるプロファイラの高速化と改善

  • Google Play SDK Index との連携

  • Wear OS アプリのプレビュー タイル

  • Wear OS アプリのテスト用に模擬センサーデータを生成

  • Compose Glance ウィジェットのプレビュー

  • Compose のライブ編集をデフォルトで有効化

  • Compose プレビュー スクリーンショット テスト プラグイン(アルファ版)- 追加インストールが必要


IntelliJ プラットフォーム アップデート(2024.1): Koala 2024.1.1 でも利用可能

  • ターミナルの刷新

  • 大きなファイルの操作をシンプルにするエディタの固定行

  • プロジェクトのインデックス作成中でも動作するコードの強調表示と補完

  • 柔軟な IDE サイズ調整

最後にもう一度簡単にお伝えしておきますが、今後、最初の Android Studio リリースには .1 の Android Studio メジャー バージョン番号が割り当てられ、このタイミングで更新版の IntelliJ プラットフォームが導入されます。その後の Feature Drop では、Android Studio のメジャー バージョンが .2 になります。こちらは、Android アプリ開発の生産性を高める Android 固有の機能の導入に焦点を当てたものになります。


使ってみるには

Android Studio のエキサイティングな新機能を試す準備はできましたか?

さっそくカナリア版の Android Studio Koala 🐨 Feature Drop(2024.1.2)をダウンロードして、ここで紹介した新機能をワークフローに組み込んでみましょう。または、安定版の Android Studio Jellyfish 🪼 を試すこともできます。こちらの手順に従って、両方のバージョンを同時にインストールすることもできます。

いつものように、フィードバックは私たちにとって重要です。既知の問題を確認し、バグを報告し、改善を提案してください。LinkedInMediumYouTubeX で、活気に満ちたコミュニティに参加することもできます。一緒に Android アプリの未来を築き上げましょう!



* USB の速度についての詳細は こちら

1 2024 年 4 月のテストによる内部データに基づく