このドキュメントでは、一般的な開発段階とテスト段階について概説し、プラットフォームのリリース スケジュールに沿って準備計画を立てるために役立つ情報を紹介します。それにより、Android 15 を使用するユーザーに快適なエクスペリエンスを提供できます。
Google は、Android のリリースごとに、Android の有用性、安全性、パフォーマンスを向上させるため、新機能や動作変更を導入しています。多くの場合、アプリはそのままでも想定どおりに動作しますが、プラットフォームの変更に対応するためにアプリの更新が必要になる場合もあります。
AOSP(Android オープンソース プロジェクト)にソースコードがリリースされると、ユーザーはすぐに新しいプラットフォームの入手を開始できるので、それに向けて準備しておくことが重要です。アプリがユーザーの期待どおりに動作するだけでなく、新しい機能と API で新しいプラットフォームを最大限に活用できるようにするのが理想的です。
一般的な移行には、同時に進行できる次の 2 つの段階があります。
- アプリの互換性を確認する(Android 15 の最終リリースまでに完了)
- 新しいプラットフォームの機能と API をターゲットに設定する(最終リリース後、できるだけ早く完了)
Android 15 との互換性を確認する
既存のアプリの機能を Android 15 でテストすることは、Android の最新版にアップデートするユーザーに優れたエクスペリエンスを提供するために重要です。プラットフォームの変更の一部はアプリの動作に影響する可能性があるため、早い段階で徹底的にテストし、必要な調整をアプリに加えることが重要です。
通常は、アプリの targetSdkVersion
を変更せずに、アプリを調整してアップデートを公開できます。同様に、新しい API の使用や、アプリの compileSdkVersion
の変更は必須ではありません。ただし、アプリの構築方法や使用しているプラットフォームの機能に応じて状況は異なります。
テストを開始する前に、すべてのアプリの動作変更についてよく理解しておいてください。これらの変更は、targetSdkVersion
を変更しない場合もアプリに影響する可能性があります。
Android 15 システム イメージをデバイスに書き込むか、Android Emulator 用のシステム イメージをダウンロードします。
システムの動作変更を確認して、アプリが影響を受ける可能性がある領域を特定します。
デバイスまたはエミュレータにアプリをインストールして、テストを実施します。システムの動作変更に重点を置き、すべてのアプリフローを実行します。
動作変更への対応または問題の解決に必要なコード変更のみを行います。アプリが元来ターゲットとしていた API レベルで再コンパイルします。Android 15 をターゲットに設定する必要はありません。
Android App Bundle または APK に署名し、アップロードし、公開します。
互換性テストを実施する
Android 15 の互換性テストのほとんどの部分は、通常のアプリテストと同様です。この段階で、アプリの中核品質ガイドラインとテストに関するベスト プラクティスを確認することをおすすめします。
テストするには、Android 15 を搭載したデバイスに現在公開中のアプリをインストールし、すべてのフローと機能を実行して問題を探します。テストの対象を絞り込めるように、Android 15 で導入されたすべてのアプリの動作変更のうち、アプリの機能に影響するものとアプリのクラッシュを引き起こすものを確認します。
また、制限対象の非 SDK インターフェースを使用しているかどうかを確認し、テストします。アプリが使用している制限付きインターフェースは、すべて公開 SDK または NDK の同等のインターフェースに置き換える必要があります。こうしたアクセスを示す logcat 警告に注意し、StrictMode
メソッド detectNonSdkApiUsage()
を使用して、プログラムによって特定します。
最後に、アプリ内のライブラリと SDK を完全にテストして、Android 15 で想定どおりに動作することを確認します。また、プライバシー、パフォーマンス、UX、データ処理、権限に関するベスト プラクティスに従ってください。問題が見つかった場合は、SDK を最新バージョンにアップデートするか、SDK のデベロッパーに対処方法を問い合わせます。
テストが完了し、必要な更新を加えたら、互換性のあるアプリを直ちに公開することをおすすめします。そうすることで、Android 15 にアップデートしたときに、ユーザーがアプリを早めにテストしてスムーズに移行できます。
アプリのターゲティングを更新し、新しい API でビルドする
互換性のあるバージョンのアプリを公開した後、次のステップとして、targetSdkVersion
を更新することにより Android 15 の完全なサポートを追加し、Android 15 の新しい API と機能を利用できるようにします。新しいプラットフォームをターゲットにするための Google Play の要件に留意し、準備ができ次第、この更新を行うことができます。
Android 15 の完全なサポートに向けた作業を計画するにあたっては、Android 15 をターゲットとするアプリに影響する動作変更を確認します。これらのターゲット固有の動作変更によって機能的な問題が発生し、対処が必要になる場合があります。場合によっては大規模な開発が必要になるため、できるだけ早く確認して対処することをおすすめします。アプリに影響する特定の動作変更を特定するには、互換性トグルを使用して、選択した変更を有効にしてアプリをテストします。
Android 15 を完全にサポートする手順は次のとおりです。
Android 15 でビルドするには、最新バージョンの Android Studio プレビュー版をインストールします。Android 15 のデバイスまたはエミュレータを用意します。
targetSdkVersion
およびその他のビルド構成を更新します。
Android 15 をターゲットとするアプリに適用される動作変更を確認します。アプリが影響を受ける領域を特定し、それに対応する方法を計画します。
Android 15 のユーザー プライバシーに関する変更に対応するために必要な変更をコードとアーキテクチャに加えます。
Android 15 の API を利用して、アプリに新しい機能を組み込みます。Android 15 に向けて再コンパイルします。
Android 15 のデバイスまたはエミュレータでテストします。動作変更がアプリに影響する可能性がある領域に集中して、新しい API を使用する機能を試します。プラットフォームと API に関するフィードバックを送信します。プラットフォーム、API、サードパーティの SDK に関する問題を報告します。
Android 15 の API 最終版が提供された時点で、targetSdkVersion
およびその他のビルド構成を再度更新し、追加の更新を行って、アプリをテストします。
Android App Bundle または APK に署名し、アップロードし、公開します。
SDK を入手し、ターゲット設定を変更し、新しい API を使ってビルドする
Android 15 の完全なサポートのテストを開始するには、Android Studio の最新プレビュー版を使用して、Android 15 SDK とその他の必要なツールをダウンロードします。次に、アプリの targetSdkVersion
と compileSdkVersion
を更新し、アプリを再コンパイルします。詳しくは、SDK 設定ガイドをご覧ください。
Android 15 アプリをテストする
アプリをコンパイルして Android 15 搭載デバイスにインストールした後、Android 15 をターゲットに設定したときにアプリが正しく動作することを確認します。動作変更の中には、アプリが新しいプラットフォームをターゲットとする場合にのみ適用されるものがあります。テストを開始する前に、そのような変更を確認してください。
基本的な互換性テストを行う場合と同様に、すべてのフローと機能を実行して問題を探します。テストは、Android 15 をターゲットとするアプリでの動作の変更に集中させます。この段階で、アプリの中核品質ガイドラインとテストに関するベスト プラクティスに対するアプリの対応状況をチェックすることをおすすめします。
制限対象となる非 SDK インターフェースを使用しているかどうかをテストして確認してください。こうしたアクセスを示す logcat 警告に注意し、StrictMode メソッド detectNonSdkApiUsage()
を使用して、プログラムによって特定します。
最後に、アプリ内のライブラリと SDK を完全にテストして、Android 15 で想定どおりに動作することを確認します。また、プライバシー、パフォーマンス、UX、データ処理、権限に関するベスト プラクティスに従ってください。問題が見つかった場合は、SDK を最新バージョンにアップデートするか、SDK のデベロッパーに対処方法を問い合わせます。
アプリの互換性切り替えを使用してテストする
Android 15 は互換性の切り替えに対応しており、ターゲット固有の動作変更についてアプリを簡単にテストできます。デバッグ可能なアプリでは、この切り替えによって次のことが可能になります。
- アプリの targetSdkVersion を実際には変更せずに、ターゲット固有の変更をテストする。切り替えを使用して、特定のターゲット固有の動作変更を強制的に有効にし、既存のアプリに対する影響を評価できます。
- 特定の変更にテストを集中させる。切り替えを使用することで、テスト対象以外のターゲット固有の変更をすべて無効にできます。これにより、一度にすべてのターゲット固有の変更に対処する必要がなくなります。
- adb を介して切り替えを管理する。adb コマンドを使用すると、切り替え可能な変更を自動テスト環境で有効または無効にできます。
- 標準の変更 ID を使用して迅速にデバッグする。切り替え可能な変更にはそれぞれ一意の ID と名前があり、ログ出力から根本原因を迅速にデバッグできます。
アプリのターゲット設定を変更する場合や、Android 15 のサポートに向けて開発を行っているときは、この切り替え機能が役立ちます。詳細については、互換性フレームワークの変更(Android 15)をご覧ください。