GoogleがAndroid 17 Beta 3をリリース!Pixel 6以降で利用可能に

Googleは16日(現地時間)、スマートフォン(スマホ)やタブレットなど向けプラットフォーム「Android」の次期バージョン「Android 17(開発コード名:Cinnamon Bun)」( https://developer.android.com/about/versions/17 )における一般向けベータ版の第4弾「Android 17 Beta 4」を公開したとお知らせしています。

すでに同社が展開する「Pixel」ブランドの「Pixel 6」および「Pixel 6 Pro」以降のスマートフォン(スマホ)やタブレット「Pixel Tablet」にて「Android Beta Program」( https://g.co/androidbeta )からネットワーク経由によるソフトウェア更新(OTA)で導入できるほか、ファクトリーイメージやOTAイメージも配信開始されています。なお、Android 17 Betaについてはこれまで通りにPixelスマホ以外の他のメーカーの製品についても今後順次、各メーカーから提供される見込みです。

Android 17 Beta 4はビルド番号が各機種共通の「CP21.260330.008」で、Androidセキュリティーパッチレベルが「2026-04-05」となっています。またGoogle Play servicesも「26.11.36」となっているほか、APIレベルはAndroid 17 Beta 1に続いて「API Level 37」となっています。またPixel製品以外でもAndroidエミュレーターでも試せ、エミュレーターではx86(64bit)およびARM(v8-A)がサポートされています。

同社では昨年のAndroid 16から早めにリリースしてその年の後半に新たなAPIと機能を含むSDKを追加するマイナーバージョンアップを行うようにしており、今年も2026年第2四半期(Q2:4〜6月)にAndroid 17がリリースされ、2026年第4四半期(Q4:10〜12月)にマイナーバージョンアップをリリースする予定となっています。なお、以前はベータ版の前に開発者向けプレビュー版(Developer Preview)をリリースしていましたが、Androidではアルファ版として先行してリリースされるAndroid Canaryを提供開始しており、こちらに置き換えられています。

Android Canaryでは内部テストに合格するとすぐに導入されるため、四半期ごとのリリースを待たずに新しいAPIと機能を試せ、早期のテストによって新しいAPIと機能の変更が加わり、最終版に近づいたより洗練され、安定性の高いベータ版の体験が実現しているほか、ベータ版と同じようにネットワーク経由によるソフトウェア更新が提供されており、独立したアップデートチャネルとしてCIワークフローとの統合が容易で、今後の潜在的な変更に関する即時フィードバックを提供する最も早い機会が提供されるといったメリットがあります。


Android 17は現在の最新バージョンの「Android 16」の次のメジャーアップデートとなる予定のバージョンで、Googleでは2024年に正式版をリリースしたAndroid 15までは基本的に新しいAPIとSDKを伴う1年に1回のペースでメジャーアップデートを実施してきましたが、前述通りに昨年からSDKのリリースをより頻繁に行うことが明らかにされ、2025年は新しいAPIを備えたメジャーリリースとなるAndroid 16の正式版が2025年6月にリリースされ、追加のAPIや機能を含むマイナーリリースを2025年12月にリリースしました。

今年も同様に2026年Q2にAndroid 17の正式版がリリースされ、2026年Q4にマイナーリリースがリリースされる予定です。Android 17(API Level 37)ではアダプティブ ロードマップの次のフェーズに移行し、大画面機種(sw>600dp)での方向とサイズ変更の制限に関する開発者のオプトアウトが削除され、アプリがSDK 37をターゲットとする場合に適応性を備えていなければならず、例えば、タブレットでのマルチタスクやウィンドウなどの使用などで無駄なスペースを埋め、姿勢を尊重することが期待されます。


Android 17のベータ版および正式版の主なリリーススケジュール



Android 17の後に今年後半にはマイナーリリースも実施される見込み

Android 17では引き続いてプライバシーやセキュリティー、そして洗練されたパフォーマンスを最優先するプラットフォームの構築に向けた取り組みを継続しており、今回のAndroid 17 Beta 4はAndroid 17の正式版リリースに向けたテストに必要な環境を提供するほぼ最終版となりました。これにより、すでにAPIはロックされていますし、最終的な互換性テストを実施してAndroid 17向けアプリをGoogle Playストアに公開できるようになります。

<アプリのメモリ制限>
Android 17ではデバイスの総メモリー容量(RAM)に基づいてアプリのメモリー制限を導入し、アプリとAndroidの利用者にとってより安定した決定論的な環境を構築します。制限は保守的に設定され、システム全体の不安定性を引き起こしてUIのカクつき、バッテリー消費の増加、アプリの強制終了につながる極端なメモリリークやその他の異常値を特定してシステムのベースラインを確立します。

ほとんどのアプリセッションへの影響は最小限に抑えられると予想されますが、メモリーのベースラインを確立するなど、次のメモリーに関するベストプラクティス( https://developer.android.com/topic/performance/memory )を推奨します。現在の実装ではアプリが影響を受けた場合にApplicationExitInfoのgetDescriptionには「MemoryLimiter」という文字列が含まれます。またTRIGGER_TYPE_ANOMALYを使用したトリガーベースのプロファイリングにより、メモリー制限に達したときに収集されるヒープダンプを取得することもできます。


Android Studio ProfilerのLeakCanaryタスク

またメモリーリークの検出を支援するため、Android Studioの最終プレビュー版(Panda)ではLeakCanaryとの統合機能をAndroid Studio Profilerに専用タスクとして直接追加しました。この機能はIDE内でコンテキスト化され、ソースコードと完全に統合されています。メモリー使用量の削減はよりスムーズなパフォーマンス、より長いバッテリー駆動時間、そしてあらゆるフォームファクターにおける優れたユーザーエクスペリエンスに直結します。Androidエコシステムのより高速で信頼性の高い未来を一緒に築き上げていきましょう。

<アプリの異常を検出するためのプロファイリングトリガー>
Android 17ではリソースを大量に消費する動作や潜在的な互換性低下を監視する製品上の異常検出サービスを導入しました。このサービスはProfilingManagerと統合されており、アプリはシステムによって検出された特定のイベントによってトリガーされるプロファイリング成果物を受信できます。TRIGGER_TYPE_ANOMALYトリガーを使用すると、バインダー呼び出しの過剰やメモリ使用量の過剰など、システムパフォーマンスの問題を検出できます。

アプリがOSで定義されたメモリー制限を超えると、異常トリガーによって開発者はアプリ固有のヒープダンプを受け取り、メモリーの問題を特定して修正できます。さらにバインダーの過剰なスパムに対しては異常トリガーはバインダートランザクションのスタックサンプリングプロファイルを提供します。

このAPIコールバックはシステムによる強制措置が実行される前に発生します。例えば、メモリー制限超過によりシステムによってアプリが強制終了される前に開発者がデバッグデータを収集するのに役立ちます。トリガーの使用方法についてはトリガーベースのプロファイリングに関するドキュメント( https://developer.android.com/topic/performance/tracing/profiling-manager/trigger-based-capture )をご覧ください。

val profilingManager = applicationContext.getSystemService(ProfilingManager::class.java)
val triggers = ArrayList<ProfilingTrigger>()
triggers.add(ProfilingTrigger.Builder(
ProfilingTrigger.TRIGGER_TYPE_ANOMALY))
val mainExecutor: Executor = Executors.newSingleThreadExecutor()
val resultCallback = Consumer<ProfilingResult> { profilingResult ->
if (profilingResult.errorCode != ProfilingResult.ERROR_NONE) {
// upload profile result to server for further analysis
setupProfileUploadWorker(profilingResult.resultFilePath)
}
}
profilingManager.registerForAllProfilingResults(mainExecutor, resultCallback)
profilingManager.addProfilingTriggers(triggers)

<Androidキーストアにおけるポスト量子暗号(PQC)>
Android KeystoreはNIST標準規格であるML-DSA(モジュール格子ベースデジタル署名アルゴリズム)のサポートを追加しました。対応製品ではセキュアなハードウェア内でML-DSAキーを生成して量子耐性署名を作成するために使用できます。Android Keystoreは標準Java暗号化アーキテクチャAPI(KeyPairGenerator、KeyFactory、Signature)を通じて「ML-DSA-65」および「ML-DSA-87」といったアルゴリズムのバリアントを提供します。詳細については開発者向けドキュメント( https://developer.android.com/reference/android/security/keystore/KeyGenParameterSpec#example:-ml-dsa-key-pair-for-signing )を参照してください。

KeyPairGenerator generator = KeyPairGenerator.getInstance(
“ML-DSA-65”, "AndroidKeyStore");
generator.initialize(
new KeyGenParameterSpec.Builder(
“my-key-alias”,
KeyProperties.PURPOSE_SIGN | KeyProperties.PURPOSE_VERIFY)
.build());
KeyPair keyPair = generator.generateKeyPair();

その他、Android 17向けアプリをテストするにはGoogle Playなどを使って本番環境用アプリまたはライブラリやエンジンを利用したテスト用アプリをAndroid 17 Beta 4を実行している製品またはエミュレーターにインストールし、アプリのすべてのフローを確認して機能面またはUIの問題を探し、動作の変更点を確認してテストの焦点を絞ります。なお、Androidの各リリースにはプライバシーやセキュリティー、全体的なユーザーエクスペリエンス(UX)を向上させるプラットフォームの変更が含まれており、これらの変更はアプリに影響を与える可能性があります。注目すべき変更点をいくつか以下に示します。

・大画面でのサイズ変更:Android 17をターゲットにすると、大画面での向き、サイズ変更、アスペクト比の制約を維持するオプションを無効にすることはできなくなります。
・動的コード読み込み:アプリがAndroid 17以降をターゲットとしている場合、Android 14でDEXファイルとJARファイル向けに導入されたより安全な動的コード読み込み(DCL)保護機能がネイティブライブラリにも適用されるようになりました。System.load()を使用して読み込まれるすべてのネイティブファイルは読み取り専用としてマークする必要があります。そうでない場合、システムはUnsatisfiedLinkErrorをスローします。
・証明書の透明性(CT)をデフォルトで有効にする:証明書の透明性(CT)はデフォルトで有効になっています。Android 16ではCTは利用可能でしたが、アプリ側で有効化する必要がありました。
・ローカルネットワークの保護:Android 17以降を対象とするアプリではローカルネットワークへのアクセスがデフォルトでブロックされています。可能であればプライバシー保護機能付きのピッカーを使用するように切り替え、広範囲かつ永続的なアクセスには新しいACCESS_LOCAL_NETWORKを使用してください。
・バックグラウンドオーディオのセキュリティ強化:Android 17以降ではオーディオフレームワークがオーディオ再生やオーディオフォーカス要求、音量変更APIなどのバックグラウンドオーディオ操作に制限を適用します。開発者からのフィードバックに基づき、Android 17 Beta 2以降でターゲットSDKのゲート設定、使用中のFGS適用、アラームオーディオの除外などのいくつかの変更を加えました。詳細は更新されたガイダンス( https://developer.android.com/about/versions/17/changes/bg-audio )をご覧ください。

またAndroid 17のベータ版は開発者がAndroid 17に対応させるために導入するほか、新たにAndroid 17を早期に試したい人も導入して新機能などを体験でき、さまざまな変更が行われているため、それらの影響を完全に把握するには多くの人からフィードバックが不可欠だとし、Googleでは試した人はフォードバックを送るように要望しています。一方、開発者はAndroid 17で最高の開発体験を実現するには「Android Studio(Panda)」の最新プレビュー版の利用が推奨されています。Android Studio(Panda)の導入した場合には以下の点にご注意ください。



記事執筆:memn0ck


■関連リンク
・エスマックス(S-MAX)
・エスマックス(S-MAX) smaxjp on Twitter
・S-MAX - Facebookページ
・Android 17 関連記事一覧 - S-MAX
・Android Developers Blog: The Fourth Beta of Android 17
・Android 17| Android Developers