本日、Android 17 をリリースし、サポート対象のほとんどの Google Pixel デバイスでご利用いただけるようにしました。今後数か月以内に、Android 17 を搭載した新しいデバイスがリリースされる予定です。
Android 17 は、アプリを中心としたインテリジェンス システムへの移行の始まりです。Android は、大画面のサイズ変更を必須にすることで、アダプティブ ファーストの開発標準に移行すると同時に、次世代のプライバシー、セキュリティ、メディア、カメラ、パフォーマンスを提供します。この投稿では、そのすべてについて説明します。また、アプリがこの機会を活かせるよう、次世代のツール、ライブラリ、エージェント スキルを統合する方法についても説明します。
昨年、カナリア版からベータ版のリリースに至るまで、デベロッパー コミュニティの皆様と協力して、皆様とユーザーが信頼できるプラットフォームを構築してきました。このため、このたび Android オープンソース プロジェクト(AOSP)でソースコードが利用可能になりました。これにより、Android の仕組みをより深く理解するために、ソースコードを調べることができます。
Android 17 について詳しく見ていきましょう。
インテリジェンス システム
ハードウェア、ソフトウェア、AI の緊密な統合により、Android はオペレーティング システムからインテリジェンス システムへと変革を遂げます。ユーザーのニーズを予測して役立つ新しいエクスペリエンスを提供することで、アプリのエンゲージメントを高める機会を増やします。そのため、Android 17 では、対応する Jetpack ライブラリを備えたプラットフォーム API である AppFunctions の機能が拡張されています。これにより、アプリの独自の機能を、Model Context Protocol のオンデバイス版である Android MCP のオーケストレーション可能な「ツール」として提供できます。AI エージェントとアシスタント(Google Gemini など)は、AppFunction を検出して実行し、アプリのローカル状態に直接アクセスして、ユーザーに代わってワークフローを実行できます。
現在アルファ版の Jetpack ライブラリを使用すると、クラスにアノテーションを付け、KDoc コメントを追加するのと同じくらい簡単に AppFunctions を追加できます。
/** * A note app's [AppFunction]s. */ class NoteFunctions( private val noteRepository: NoteRepository ) { /** * Adds a new note to the app. * * @param appFunctionContext The execution context. * @param title The title of the note. * @param content The note's content. */ @AppFunction(isDescribedByKDoc = true) suspend fun createNote( appFunctionContext: AppFunctionContext, title: String, content: String ): Note { return noteRepository.createNote(title, content) } }
また、アプリの主要なワークフローを分析し、必要な Kotlin コードを自動的に生成し、LLM ツール呼び出し用に KDoc を最適化し、テストとデバッグ用の ADB コマンドを提供する AppFunctions エージェント スキルもリリースしました。
Gemini の統合は現在、Trusted Tester による限定公開プレビュー版ですが、今すぐアプリの準備を開始できます。AppFunctions を実行するための ADB コマンドに加えて、AppFunctions を検出して実行し、AI エージェントの統合をシミュレートするためのインターフェースを備えたテスト エージェント アプリも提供しています。統合早期アクセス プログラム(goo.gle/eap-af)に参加して、App Functions を本番環境に最初にデプロイするアプリの 1 つになるチャンスを手に入れましょう。
アダプティブ ファースト
ユーザーは単一のフォーム ファクタに依存しなくなり、スマートフォン、折りたたみ式デバイス、タブレット、ノートパソコン、自動車用ディスプレイ、没入型 XR 環境の間を移行します。現在、ユーザーの手元にある大画面デバイスは 5 億 8,000 万台以上にのぼり、Google ブックスのリリースも間近に迫っています。Android スタック上に構築された次世代の ChromeOS では、アダプティブは単なる技術的な目標ではなくなりました。これは、エンゲージメントの高いユーザーにリーチする絶好の機会です。そのため、Google はアダプティブ ファーストの開発標準に移行しています。
大画面ではサイズ変更や向きの制限なし
接続されたディスプレイでデスクトップ モードで動作するモバイル デバイスなど、すべてのフォーム ファクタでアプリがプレミアム エクスペリエンスを提供できるようにするため、Android 17(API レベル 37)では、API レベル 37 をターゲットとするアプリの大画面デバイス(sw > 600 dp)の画面の向きとサイズ変更の制限に関するデベロッパー オプトアウトが削除されます。システムは、screenOrientation、setRequestedOrientation()、resizeableActivity=false、アスペクト比の制約 (minAspectRatio/maxAspectRatio) など、以前のマニフェスト属性とランタイム API を無視します。ゲーム(Google Play のアプリのカテゴリに基づく)は引き続き免除されます。アプリは、あらゆるウィンドウ サイズに適応し、ユーザーが好むデバイスの姿勢を尊重し、フリーフォーム ウィンドウをネイティブでサポートする準備が整っている必要があります。
次世代のマルチタスク: アプリのバブル、バブルバー、デスクトップのインタラクティブ PIP
Android 17 では、ユーザーのマルチタスクのやり方を再定義する強力な新しいウィンドウ機能が導入されています。アプリには、これまで以上に柔軟なレイアウトが求められます。
- アプリバブル: メッセージ バブル API を超えて、ランチャーでアイコンを長押しすることで、任意のアプリをフローティング バブルに変換できるようになりました。この機能はスマートフォン、折りたたみ式デバイス、タブレットで利用でき、あらゆるワークフローで軽量なマルチタスクを実現します。
- バブルバー: 大画面(タブレットと折りたたみ式デバイス)では、システム タスクバーに専用のバブルバーが追加され、フローティング アプリバブルの整理、切り替え、ドッキングができるようになりました。
- デスクトップ インタラクティブ PiP: デスクトップ環境で、Android 17 はインタラクティブ ピクチャー イン ピクチャー(PiP)を導入します。読み取り専用の従来の PiP ウィンドウとは異なり、これらの固定ウィンドウは、他のアプリケーション ウィンドウの最前面に常に表示されながら、完全にインタラクティブな状態を維持します。
アクティビティの再作成の更新
Android 17 では、状態の損失やスタッタリングを回避するため、アクティビティの再作成のデフォルトの動作が更新されています。システムは、UI の完全な再描画を必要としない一般的な構成変更(CONFIG_KEYBOARD、CONFIG_KEYBOARD_HIDDEN、CONFIG_NAVIGATION、CONFIG_TOUCHSCREEN、CONFIG_COLOR_MODE など)について、デフォルトでアクティビティを再起動しなくなります。
代わりに、実行中のアクティビティは onConfigurationChanged() を介してこれらの更新を受け取り、スムーズな移行が可能になります。これらの変更のためにリソースを再読み込みする際に、アプリが明示的に完全な再起動に依存している場合は、新しい android:recreateOnConfigChanges マニフェスト属性を使用して明示的にオプトインする必要があります。
続行
Android 17 では、ユーザーが Android デバイス間でタスクをシームレスに移行できるように、Continue On が追加されています。タブレットのタスクバーに、モバイル デバイスで最近開いたアプリの候補が表示され、アプリを起動して中断した場所へのディープリンクをワンタップで実行できます。アプリがインストールされていない場合は、ウェブの使用にフォールバックするなど、アプリからウェブへの移行をサポートできます。
class MyHandoffActivity : Activity() {
...
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Do stuff
...
// Enable handoff
setHandoffEnabled(true, null)
}
// Override and implement onHandoffActivityDataRequested
override fun onHandoffActivityDataRequested(handoffRequestInfo: HandoffActivityDataRequestInfo) : HandoffActivityData {
// Create and return handoff data
}
}Jetpack Compose でアダプティブ ファーストを実現する
アプリを新しい Android 17 の要件に適合させるため、Jetpack Compose アダプティブ スキルをリリースしました。この AI 搭載のデベロッパー ワークフローは、最適な適応型プラクティスの実装に役立ちます。
- アダプティブ ナビゲーション: Material 3 アダプティブ ライブラリの
NavigationSuiteScaffoldを使用して、モバイルの下部ナビゲーション バーと大画面の端に固定されたナビゲーション レールを自動的に切り替えます。 - マルチペイン レイアウト: 脆弱なフラグメント トランザクションではなく、Navigation 3 のシーン(
ListDetailSceneStrategyとSupportingPaneSceneStrategy)を使用して、リストと詳細、サポートペインのレイアウトをネイティブに実装します。 - FlexBox と Grid API: Compose 1.11 の動的レイアウト コンポーネントを活用して、行と列のスパンをその場で簡単に調整し、コンテンツが常にスペースを美しく埋めるようにします。
- 高度な非タッチ入力: Compose 1.11 の強化されたトラックパッドとマウスのサポート(ネイティブ フォーカス リングや、
TrackpadInjectionScopeやperformTrackpadInputなどの新しい API を含む)を活用して、Googlebook やデスクトップ モードで「ノートパソコン クラス」の真のユーザー エクスペリエンスを簡単にテストして提供できます。 - 動的なウィンドウの状態: Compose のリアクティブな状態モデルを活用して、アプリが全画面表示からフローティング アプリバブルまたはインタラクティブなデスクトップ PiP ウィンドウに切り替わる際に UI をシームレスに適応させ、最小のサイズでも優れたエクスペリエンスを確保します。
Android は Compose ファースト
Compose はアダプティブ アプリを構築する最も簡単な方法を提供します。これは、すべての Android UI を Compose で構築すべきだと Google が考える多くの理由の 1 つにすぎません。そのため、Android 開発は Compose ファーストになりました。新しい Android API、ライブラリ、ツール、デベロッパー ガイダンスはすべて、Jetpack Compose 専用に構築されます。以前の View コンポーネント(android.widget パッケージ内)と View ベースの Jetpack ライブラリ(Fragments、RecyclerView、ViewPager など)は、メンテナンス モードになりました。重大なバグの修正のみが提供され、新機能は提供されません。
ヒント 移行の準備はできましたか?Google の AI を活用した XML から Compose への移行スキルを使用すると、以前の View レイアウトを自動的に分析し、適応性の高い Compose コードに変換できます。
パフォーマンスと効率性
アプリのパフォーマンスとは、スムーズなユーザー インターフェース、アプリの高速な起動、効率的なマルチタスクを意味します。Android 17 では、これらのすべての領域で大きな改善が加えられています。
アプリのメモリ上限
メモリ使用量は、全体的なパフォーマンスの基盤となる重要な要素の 1 つです。フォアグラウンド アプリやサービスが制御されずに増大すると、メモリ管理によって CPU とバッテリーの使用率が急上昇し、最終的には他の正常なキャッシュ アプリやバックグラウンド ジョブが終了し、コールド スタートの遅延やマルチタスクの低下につながります。
Android 17 以降では、デバイスの合計 RAM に基づくアプリのメモリ上限が厳格に適用され、違反したプロセスは突然終了します。これらの厳しい要件に対応するために役立つ新しい機能:
- R8 オプティマイザー: R8 オプティマイザーは、クラス、メソッド、フィールドを短い名前に縮小し、未使用のコードとリソースを削除することで、アプリのバイトコードのメモリ使用量を大幅に削減します。R8 をフルモードで使用し、新しい R8 構成アナライザを使用すると、アプリで R8 のメリットを最大限に活用できます。
- Android Studio Panda の LeakCanary: プロファイラに、専用タスクとしてネイティブの LeakCanary 統合が追加されました。IDE とソースコードに完全に統合されています。
- ApplicationExitInfo: アプリがこれらの制限によって終了した場合、ApplicationExitInfo の getDescription() は「MemoryLimiter:AnonSwap」を返します。
- オンデバイスの異常検出: ProfilingManager の一部。
TRIGGER_TYPE_ANOMALYを使用したトリガーベースのプロファイリングを活用して、メモリ上限に達したときにヒープダンプを自動的にキャプチャできます。
val profilingManager = applicationContext .getSystemService(ProfilingManager::class.java) val triggers = ArrayList<ProfilingTrigger>().apply { add(ProfilingTrigger.Builder( ProfilingTrigger.TRIGGER_TYPE_ANOMALY).build()) } profilingManager.addProfilingTriggers(triggers)
また、Google Play Console でより多くのフィールド内メモリ指標を表示できるよう取り組んでいます。
世代別ガベージ コレクション
Android 17 では、ART の Concurrent Mark-Compact ガベージ コレクタ(GC)に、より頻繁でリソース消費の少ない若い世代のコレクションが導入されています。存続期間の短いオブジェクトを存続期間の長い安定したオブジェクトから分離することで、システムはコストのかかるフルヒープ スキャンではなく、軽量な「若い世代」のスイープを頻繁に実行し、CPU 使用率、電力消費、UI のカクつきを大幅に削減します。Google のテストでは、GC によるアプリケーション スレッドへの干渉が大幅に改善され、最大メモリ常駐セット サイズ(RSS)が削減されました。ART の改善は、Google Play システム アップデートを通じて、Android 12(API レベル 31)以降を搭載した 10 億台を超えるデバイスでも利用できます。
ロックフリー MessageQueue
SDK 37 以上をターゲットとするアプリでは、コアの android.os.MessageQueue がロックフリー アーキテクチャを実装するようになり、フレーム落ちが大幅に減少し、アプリの起動時間が短縮され、マルチスレッド シナリオでのビジーキューのパフォーマンスが大幅に向上します。注: これは、プライベート MessageQueue フィールドとメソッドでリフレクションを使用するアプリを壊す可能性があります。MessageQueue の内部に依存しない計測テストのために、TestLooperManager に peekWhen API と poll API が追加されました。
static final フィールドが真の final に
Android 17 以降では、SDK 37 以上をターゲットとするアプリは「static final」フィールドを変更できなくなるため、ランタイムでパフォーマンスの最適化をより積極的に適用できるようになります。リフレクション(またはディープ リフレクション)を介してこれを行おうとすると、IllegalAccessException がスローされます。
JNI の SetStatic<Type>Field メソッド ファミリーを使用して変更すると、アプリが直ちにクラッシュします。
カスタム通知のビューの制限
メモリ使用量を減らすため、 カスタム通知ビューのサイズをさらに制限します。今回の更新では、アプリが URI を使用して既存の制限を回避できる抜け穴が解消されます。この動作はターゲット SDK バージョンによって制御され、API 37 以上をターゲットとするアプリに影響します。
プライバシーとセキュリティ
ユーザーの信頼を維持することは、Android エコシステムの中心にあります。Android 17 では、ユーザー エクスペリエンスを簡素化しながらセンシティブ データを保護する堅牢な機能が導入されています。
プライバシー保護の選択肢
これまで、アプリが連絡先、正確な位置情報、メディア ファイルなどの情報にアクセスするには、広範な永続的な権限が必要でした。Android 17 では、ユーザーが明示的に選択したデータにのみ一時的なセッションベースのアクセス権を付与する、プライバシー保護の選択肢への移行が継続されます。
- システムレベルの連絡先選択ツール:
ACTION_PICK_CONTACTSを利用することで、アプリはユーザーが選択した特定のフィールド(メールアドレスや電話番号など)にのみ一時的にアクセスすることをリクエストできるようになり、広範なREAD_CONTACTS権限を必要としなくなります。仕事用プロファイルと個人用プロファイルの分離も完全にサポートしています。 - カスタマイズ可能な写真選択ツールの縦横比: PhotoPickerUiCustomizationParams を使用して、システム写真選択ツールをカスタマイズし、サムネイルを縦向きで表示できます。動画ベースのソーシャル メディア アプリなど、写真や動画を常に縦向きで表示するアプリに最適です。
- システム レンダリングによる位置情報ボタン: アプリに埋め込むことができる新しいシステム レンダリングによる位置情報ボタンは、現在のセッションのみに正確な位置情報へのアクセスを許可します。
- EyeDropper API: 新しいシステムレベルの API である
ACTION_OPEN_EYE_DROPPERを使用すると、アプリでシステム駆動のスポイトを作成し、ユーザーがディスプレイ上の任意のピクセルから色を選択できるようになります。これにより、広範で機密性の高いスクリーン キャプチャやメディア プロジェクションの権限を必要としない、安全でプライバシーの保護に配慮した色選択エクスペリエンスが提供されます。
val eyeDropperLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> if (result.resultCode == Activity.RESULT_OK) { val color = result.data?.getIntExtra(Intent.EXTRA_COLOR, Color.BLACK) // Use the picked color in your app } } fun launchColorPicker() { val intent = Intent(Intent.ACTION_OPEN_EYE_DROPPER) eyeDropperLauncher.launch(intent) }
ローカル ネットワークへのアクセス
Android 17 を対象とするアプリは、ACCESS_LOCAL_NETWORK ランタイム権限を必要とするか、スマートホーム デバイスとの通信やキャスト レシーバなど、ローカル ネットワーク通信にシステム仲介型のプライバシー保護デバイス選択ツールを使用する必要があります。ACCESS_LOCAL_NETWORK は既存の NEARBY_DEVICES 権限グループに属するため、他の NEARBY_DEVICES 権限をすでに付与しているユーザーには、再度プロンプトが表示されることはありません。
SMS OTP 保護
Android 17 では、SMS メッセージへのアクセスを 3 時間遅らせることで、SMS ワンタイム パスワード(OTP)の保護を強化しています。
- WebOTP の形式: 対象の受信者ではないすべてのアプリで遅延(ドメインの不一致)。
- 標準 SMS OTP: SDK 37 以上をターゲットとするすべてのアプリで遅延します。
免除: デフォルトの SMS、アシスタント、接続されたコンパニオン アプリは免除されます。アプリは、SMS Retriever API または SMS User Consent API への移行を強く推奨します。
ポスト量子暗号(PQC)
Android 17 は、次世代の暗号セキュリティに対応しています。
- キーストアの統合: 対応デバイスは、セキュア ハードウェアで ML-DSA(Module-Lattice-Based Digital Signature Algorithm)鍵を生成して耐量子署名を作成し、標準の JCA API を介して公開できます。
- ハイブリッド APK 署名: 従来型の署名と ML-DSA 署名を組み合わせてアプリの配信を保護する v3.2 APK 署名スキームを導入しました。
ネイティブ動的コードの読み込みの安全性を改善
アプリが SDK 37 以上をターゲットとしている場合、DEX ファイルと JAR ファイルを対象とする動的コードのより安全な読み込み(DCL)保護が、ネイティブ ライブラリにも適用されるようになります。この保護は Android 14 で導入されました。System.load を使用して読み込まれるすべてのネイティブ ファイルは、読み取り専用としてマークされている必要があります。それ以外の場合、システムは UnsatisfiedLinkError をスローします。
物理入力に対するよりスマートなパスワード保護
Android 17 では、物理キーボードを使用する際にパスワードや PIN などのシークレットを入力する際の安全性を高めるため、デフォルトで最後に入力した文字が表示されなくなります。
ユーザーは、これらのディスプレイ設定を好みに合わせて簡単にカスタマイズできます(利用できる設定はデバイス メーカーによって異なる場合があります)。
これらのプライバシー保護の強化は、Android の組み込み SDK コンポーネントで自動的にサポートされ、SecureTextFields の Compose 1.12 でサポートされます。
クリエイターを支援し、ユーザーを喜ばせるメディアとカメラの機能
Android 17 では、プロ品質のカメラとメディアにアクセスできる新しいクリエイター向け機能が導入され、消費者のエクスペリエンスも向上します。
- Eclipsa Video: SMPTE ST 2094-50 仕様に基づいて構築された HDR 動画規格。新しいメタデータを導入し、デバイスがディスプレイのヘッドルームや周囲光の条件に合わせてコンテンツを調整したり、標準コンテンツと HDR コンテンツを同時に表示したりできるようにします。
- RAW14 画像形式: RAW14 画像形式の新しいサポートにより、プロ仕様のカメラアプリで、互換性のあるカメラセンサーから最高レベルのディテールと色深度をキャプチャできます。
- ベンダー定義のカメラ拡張機能: ベンダー定義の拡張機能により、ハードウェア パートナーはカスタム カメラ拡張モードを定義して実装し、最新の優れたカメラ機能を利用できるようになります。
- 拡張 HE-AAC ソフトウェア エンコーダ: 新しいシステム提供の拡張 HE-AAC ソフトウェア エンコーダ。統合された音声とオーディオのコーディングを使用して低ビットレートと高ビットレートの両方をサポートし、ラウドネス メタデータのサポートを含め、低帯域幅の条件で音声メッセージの音質を大幅に向上させます。
- Versatile Video Coding(H.266): OEM は、MediaFormat で video/vvc MIME タイプを定義し、MediaCodecInfo で新しい VVC プロファイルを追加し、MediaExtractor にサポートを統合することで、コーデック サポートを追加できます。
- カメラ デバイスのタイプ: 基盤となるデバイスのタイプをクエリして、カメラが内蔵ハードウェア、外付けの USB ウェブカメラ、仮想カメラのいずれであるかを特定する新しい API。
- 動画撮影の一定品質: MediaRecorder の setVideoEncodingQuality は、動画エンコーダの一定品質(CQ)モードを設定し、動画全体で均一な視覚的忠実度を確保します。
補聴器のサポートを強化
- Bluetooth LE Audio 補聴器のサポート: Android に、新しい AudioDeviceInfo.TYPE_BLE_HEARING_AID 定数を使用して Bluetooth Low Energy(BLE)Audio 補聴器の特定のデバイス カテゴリが追加されました。これにより、アプリで補聴器を通常のヘッドセットと区別して、補聴器を使用するユーザーに合わせたエクスペリエンスを提供できるようになります。
- 補聴器の音声ルーティングの粒度: Android 17 では、特定のシステム音を再生する場所を個別に管理できます。通知、着信音、アラームを接続済みの補聴器またはデバイスの内蔵スピーカーに転送するように選択できるため、補聴器管理アプリの Bluetooth 接続を維持しながら、耳に不要な割り込みが発生するのを防ぐことができます。
CameraX と Media3
Android 17 向けに CameraX と Media3 が更新されました。メディア開発の粗削りな部分を滑らかにし、信頼性の高いカメラ キャプチャ、スムーズなメディア再生、クリエイティブで複雑な編集エクスペリエンスの構築を簡素化する、重労働をこなすためのものです。
以前の Android カメラ実装(Camera1 または未加工の Camera2 API)を CameraX に移行できるエージェント スキルをリリースしました。
注: Android 17 デバイスに追加されたダイナミック レンジ モードに関連するクラッシュを回避するには、CameraX のバージョンを 1.5.2 または 1.6.0 以降に更新する必要があります。
アプリ、ライブラリ、ツール、ゲームエンジンを準備しましょう。
Android SDK、ライブラリ、ツール、ゲームエンジンを開発している場合は、互換性の問題によって下流のアプリやゲームのデベロッパーがブロックされず、最新の SDK 機能をターゲットにできるように、必要なアップデートを今すぐ準備することが重要です。Android 17 を完全にサポートするためにアップデートが必要な場合は、下流のデベロッパーにお知らせください。
テストでは、Android 17 ベータ版 4 を実行しているデバイスまたはエミュレータに、Google Play またはその他の手段を使用して、ライブラリまたはエンジンを利用する製品版アプリまたはテストアプリをインストールします。アプリのすべてのフローを実行し、機能や UI の問題を探します。Android の各リリースには、プライバシー、セキュリティ、全体的なユーザー エクスペリエンスを向上させるプラットフォームの変更が含まれています。テストの対象を絞り込むため、実行対象およびターゲットが Android 17 のアプリに影響する動作変更を確認します。以下はその例です。
- 大画面でのサイズ変更: Android 17(SDK 37)をターゲットにすると、大画面での画面の向き、サイズ変更、アスペクト比の制約の維持を無効にすることはできなくなります。
- 動的コードの読み込み: アプリが SDK 37 以上をターゲットとしている場合、DEX ファイルと JAR ファイルを対象として Android 14 で導入された、より安全な動的コードの読み込み(DCL)保護が、ネイティブ ライブラリにも拡張されます。System.load() を使用して読み込まれるすべてのネイティブ ファイルは、読み取り専用としてマークする必要があります。そうしないと、システムは UnsatisfiedLinkError をスローします。
- デフォルトで CT を有効化: Certificate Transparency(CT)がデフォルトで有効になっています。(Android 16 では CT は利用可能ですが、アプリは オプトインする必要がありました)。
- ローカル ネットワーク保護: SDK 37 以降をターゲットとしているアプリでは、ローカル ネットワークへのアクセスがデフォルトでブロックされます。可能であれば、プライバシー保護ピッカーの使用に切り替え、広範で永続的なアクセスには新しい
ACCESS_LOCAL_NETWORK権限を使用します。 - バックグラウンド オーディオの強化: Android 17 以降では、オーディオ フレームワークが、オーディオ再生、音声フォーカスのリクエスト、音量変更 API など、バックグラウンド オーディオのインタラクションに関する制限を適用します。皆様からのフィードバックに基づき、ベータ版 2 以降、いくつかの変更を行いました。たとえば、使用中の FGS の強制適用時の targetSDK ゲーティングや、アラーム音声の除外などです。詳しくは、更新されたガイダンスをご覧ください。
- NPU アクセス宣言: Android 17 をターゲットとし、NPU に直接アクセスする必要があるアプリは、NPU へのアクセスがブロックされないように、マニフェストで
FEATURE_NEURAL_PROCESSING_UNITを宣言する必要があります。これには、LiteRT NPU デリゲート、ベンダー固有の SDK、非推奨の NNAPI を使用するアプリが含まれます。
Android 17 を使い始める
Android ベータ版をすでに使用している場合を除き、Google Pixel に Android 17 がまもなく配信されます。Google Pixel デバイスをお持ちでない場合は、Android Studio で Android Emulator の 64 ビット システム イメージを使用できます。現在 Android 17 ベータ版 4.1 を使用しており、Android 17 QPR1 ベータ版をまだ使用していない場合は、プログラムをオプトアウトすると、Android 17 のリリース バージョンが無線で提供されます。
パートナー デバイスで Android 17 ベータ版を入手する
Android 17 は、Honor、iQOO、Lenovo、OnePlus、OPPO、Realme、Sharp、vivo、Xiaomi などのパートナーのハンドセット、タブレット、折りたたみ式デバイスでベータ版をご利用いただけます。
Android 17 の開発エクスペリエンスを最適化するには、Android Studio Quail の最新の Canary ビルドを使用することをおすすめします。セットアップが完了したら、以下の手順を行います。
- 現在のアプリの互換性をテストし、アプリが Android 17 の変更の影響を受けるかどうかを確認します。また、Android 17 を実行しているデバイスまたは Android Emulator にアプリをインストールして、徹底的にテストします。
Android デベロッパー プレビューとベータ版プログラムにご参加いただいた皆様に、改めて感謝申し上げます。Android 17 のアップデートがアプリでどのように活用されるかを楽しみにしています。今後も、迅速なリリース サイクルでアップデートを提供していく予定です。
Android 17 の詳細については、Android 17 デベロッパー サイトをご覧ください。
-
プロダクト ニュースAndroid 17 は、本日ベータ版 3 で正式にプラットフォームの安定版に到達しました。つまり、API サーフェスがロックされ、最終的な互換性テストを実施して、Android 17 をターゲットとするアプリを Google Play ストアにプッシュできるようになります。
Matthew McCullough • 所要時間: 5 分 -
プロダクト ニュース本日、最初の長期タスク(LHT)をリリースします。これは、エンジニアが完了するまでに数日、場合によっては 1 週間かかるほど複雑なタスクです。また、対応するモデル プロバイダのエージェントから、エージェント評価も導入します。
Matthew McCullough • 所要時間: 3 分 -
プロダクト ニュース優れたユーザー エクスペリエンスは Android のミッションの中核であり、その約束を果たすには、デバイスの高速性、応答性、信頼性を維持する必要があります。
Android 開発に関する最新の分析情報を毎週メールでお届けします。