Android 14 デベロッパー プレビュー 1 リリース : 変更点と新機能のまとめ
本記事は、DroidKaigi 代表理事、技術書典 主宰者の @mhidaka さんに寄稿いただいたゲスト記事 (原文はこちら) です。 Android 14 デベロッパー プレビュー 1 リリースの発表を受けて、日本のデベロッパー向けに変更点と新機能をわかりやすくまとめていただきましたので、ぜひご参考にしてみてください。
2023 年 2 月 8 日 9:30 AM (現地時間) 、Google より Android 14 デベロッパー プレビュー 1 が発表されました。最新の Android 14 (Android U、コードネームは UpsideDownCake です。Android 14 DP1) のアップデートを速報でお伝えします。

Android 14 DP1 でのアップデートは Android 13 までの注力分野を維持しており、基本的な路線はここ数年で大きな変化はありません。パフォーマンス、プライバシー、セキュリティ、そしてユーザー体験、開発者の生産性向上です。
Android 14 DP1 はエミュレータのほか、Pixel 7 Pro、Pixel 7、Pixel 6a、Pixel 6 Pro、Pixel 6、Pixel 5a 5G、Pixel 5、Pixel 4a (5G) で今すぐ確認できます。開発環境は Android Studio Giraffe を推奨しています。 ※本記事執筆時点では OTA でのアップデートは未提供です。 ※以下、リンクすべて英語
今後のマイルストーンとリファレンス
最終版までのマイルストーンは次のとおりです。最終リリースまで概ね四半期ごとにステップを設けており、Quarterly Platform Release (QPR) と呼んで開発者からのフィードバックを集めています。

Android 14 では、デベロッパー プレビュー (意見収集フェーズ) と、ベータ版、そしてプラットフォームの安定版の 3 つのフェーズを経て最終リリースをします。2023 年 6 月までがベータ期間 (ベータ 3 まで) となり、2023 年 6 月以降は基本的に API の挙動変更はなくなり、動作確認や不具合修正が中心となります (ベータ 4, 5 が対象です) 。月単位や各フェーズの説明など詳細なマイルストーンはこちらをご確認ください。
次のリストは本記事の執筆にあたって参考にしたリファレンスです。
Android 14 の新機能 (APIの変更、追加等) (英語)
https://developer.android.com/reference/android/os/Build.VERSION_CODES.html#UPSIDE_DOWN_CAKE (英語)
Jetpack libraries アップデートリスト (2023Android 14年2月8日、DP1にあわせて数多くのライブラリが更新)
以下は Android 14 DP1 で導入された機能・制限・変更点の一覧表、注目ポイント等の解説です。続きからどうぞ!
CORE FUNCTIONS (基本機能の変更・追加)
大画面向けに最適化 (こちらは Android 13 までの変更です。Window size クラスの導入、Activity embedding など)
バックグラウンド処理の変更 (JobScheduler と Foreground Services を更新/追加)
Android 14 ではアプリは適切なフォアグラウンドサービスタイプを指定する (英語) 必要があります (少なくとも1つ、サービスにタイプを記載する)
データ転送用の新しい API を追加 (英語)しました
バッテリーの節約を目的にブロードキャストを最適化し、アプリが受け取るタイミングを変更 (システムはブロードキャストの受け取りをキューイングして待たせることがある (英語))
Android 13 以降をターゲットにしたアプリでは SCHEDULE_EXACT_ALARM (正確な時刻に起動するための権限) はデフォルトで拒否 (英語) されます
ユーザーはフォントを 200% に拡大できるように (Android 13 までの Pixel では 130% が上限)
アプリごとの言語設定を動的に変える API を追加 (英語)
文法上の性別がある言語へのサポートを強化し、パーソナライズを促進する Grammatical Inflection API (英語) を追加
OpenJDK 17 のサポートを追加
アプリ互換性検証機能 (英語) の提供 (開発者向けオプションと ADB コマンドから特定機能の ON/OFF を制御できます)
Android Work (エンタープライズ) 向けに連絡先等のクロスプロファイルアクセス (英語)
開発者オプションからアクセスできる「アプリの互換性検証機能」では、Android 14 がアプリにどのような影響を与えるか、個別にチェックできます。 画像にあるようなリストは、それぞれが Android システムのもつフィーチャーフラグで、どのような機能を制御できるかはこちらのページで解説 (英語) しています。
PRIVACY & SECURITY (セキュリティ強化)
プライバシーやセキュリティ強化のため、アプリの挙動について、Android 14 DP1 では次の制約が追加されています。基本的には開発者が意図していない機能の公開や、意図しない動作を防ぐスタンスです。
動的にブロードキャストレシーバーを登録する際には Android 13 で追加された公開・非公開設定 (英語) を明示的に指定しなければなりません。
暗黙的 Intent の受け取り方を変更 (英語) し、パッケージを指定しないインテントをアプリ内部に送信することを制限します (明示的に公開する必要があります)
動的なコードローディング (DCL) でのセキュリティイシューを軽減するため、動的に読み込む場合、読み取り専用属性が必要 (英語) になります。
Android 14 以降では targetSdkVersion が 23 未満のアプリはインストール不可となります。
Credential Manager とパスキーのサポートを追加
非 SDK インターフェイスを制限 (英語) (これまでのリストを更新し、利用できないAPIのリストが変わりました)
ANDROID 14 の新機能
ここまで機能変更等の一覧を紹介しましたが、Android 14 DP1 の新機能 (英語) について個別に解説します。アプリごとの言語設定は Android 13 のときに追加された機能ですが、Android 14 では動的更新等もサポートされるようになりました。IME とのインターフェイス (言語設定) を追加し、アプリの言語設定にあわせたキーボード等を表示することもできるようになります。
ユーザーに合わせたローカライズの一貫として、Grammatical Inflection API も面白い取り組みです。フランス語のような文法上の性別がある言語は、これまで扱いにくかったのですが (アプリからユーザーの性別や対象となる人物に基づいて翻訳文を指定できなかった) 、この API を使えばより自然な翻訳を提供可能としています。Android Studio でのサポートは未提供ですが、将来のデベロッパー プレビューリリースで対応予定とのことです。

Accessibility > Display size and text からフォントサイズを 200% に拡大
アクセシビリティ機能では最大のフォントサイズが 130% から 200% に変更がありました。Android 14 上でアプリでのレイアウトが破綻しないか (この場合は「情報を必要な利用者へ、欠落せず適切に届けられるか」という意味です) 文字や文章が欠けたりしないか、開発者として検証してください。テキストサイズの指定方法や非線形のフォントスケーリングのテストはこちらのドキュメント (英語) をみてください。
API リファレンス変更の雑感
Android 14 DP1 の API リファレンス (英語) で面白いと感じたポイントをまとめておきます。 ※以下、リンクすべて英語
android.adservices.topics 広告関連が追加されており、サードパーティ Cookie に変わる手法として Google が提唱している TOPICS ベース機能を OS 統合しようとしている。
android.credentials セキュリティ強化。CredentialManager 関連 (パスキー等) が OS 統合され始めており、より安全にユーザーデータやアクセスを管理できる仕組みが整備されつつある。
android.healthconnect ヘルスコネクト関連機能。Watch や Fit といった健康管理などプライバシーが必要なデバイス、センサーデータの管理機構が追加され始めている。
UPSIDE_DOWN_CAKE どんなケーキかな?とおもったらフライパンとかで焼くときに下側になる (切ったリンゴとか) が、食べるときにひっくり返して上側にくる逆さまケーキという意味らしい。
android.view Jetpack Compose 後、新機能が追加されないわけではなく、よりレンダリングを細かく制御できるような下位レイヤーの API が追加されていてパフォーマンス向上のための取り組みをしている。
BackEvent 画面両端でのスワイプ(予測型「戻る」ジェスチャー)をハンドリングするためのクラスが追加
ANDROID 14 DP1 のまとめ
Android 14 DP1 ではプラットフォームのコア機能アップデートや、セキュリティ・プライバシーにかかわる変更がメインです。デベロッパー プレビューの立ち位置からもわかるようにフレームワークの基礎的なアップデートが中心です。ワクワクするような機能は DP2 やベータ 1 以降 (Google I/O 2023 かもしれませんね) に期待することになります。
Android 12,13 を振り返ってみても、DP1 の変更は派手ではありません。しかし後戻りしにくい重要な変更を含んでいます (Android 14 DP1 ではフォアグラウンドサービスのタイプ指定やブロードキャストレシーバ、暗黙的インテント、動的コードローディング等の扱い変更が代表的でしょう) 、特に CredentialManager やパスキーのセキュリティ機能強化は利用者のプライバシーを守るためには必須の機能です。
DP1 では発表されなかった Jetpack Compose の新ライブラリやパフォーマンス改善、Android Studio Preview Giraffe など開発環境の新機能、生産性向上のための新機能アナウンス・ツール発表が楽しみですね。
※こちらの記事に関して、ご質問等がある場合は、@mhidaka 様まで直接ご連絡ください。