Android 16対応とAndroid 17先回り確認
結論から言うと、targetSdkVersion を Google Play の要件より低いままアップデートを提出すると、アップロードの時点で拒否される。 ストアに更新を出せなくなるという意味だ。新機能の話ではなく、既存ユーザーへの配信継続とストア掲載維持のための義務対応である。
Google Play は毎年8月31日に targetSdkVersion の最低ラインを1段引き上げてきた。現行(2025年8月〜)では API 35(Android 15)未満のアップデートがすべて拒否される。
| 施行時期 | 要件 | 未対応の場合 |
|---|---|---|
| 2023年8月〜 | API 33(Android 13)以上必須 | アップロード拒否 |
| 2024年8月〜 | API 34(Android 14)以上必須 | アップロード拒否 |
| 2025年8月〜 | API 35(Android 15)以上必須 | アップロード拒否 |
| 2026年8月頃(予測) | API 36(Android 16)以上必須 | アップロード拒否 |
このペースから API 36(Android 16)の強制化は 2026年8月頃が有力視されている。強制化される前に対応を完了させるため、2026年06月を社内の締め切りとして逆算したのがこの記事のスコープだ。Android 17 は Beta 3 で platform stability に到達しているので、同時期に別レーンで先回り確認を回しておくと正式版が来たときに慌てずに済む。
優先順位の整理
| 項目 | 期限 | 優先度 | いまやること |
|---|---|---|---|
| targetSdkVersion 36(Android 16)対応 | 2026年06月まで | 最優先 | 主要導線の回帰、CI 固定、リリース計画確定 |
| Android 17 Beta 3 検証 | 今から前倒し | 高・別レーン | emulator と実機で互換性確認、behavior changes 棚卸し |
| Android 17 新機能採用 | 正式版以降 | 低め | 影響範囲が小さい箇所から PoC |
ツールの足場を先にそろえる
Android 16 対応でも Android 17 先行検証でも、最初に詰まるのは OS の API より build 周りのことが多い。足場を先に固める。
| 要素 | 基準 | 理由 |
|---|---|---|
| Android Studio | Panda 3 stable | targetSdkVersion 36 対応の作業足場として安定している |
| AGP | 9.1.0 | R8 挙動差・lint 差分を吸収しやすい |
| JDK | 17 | AGP 9.1 の前提 |
| Kotlin | 2.3.20 | 安定版の基準をそろえる |
plugins {
id("com.android.application") version "9.1.0" apply false
id("org.jetbrains.kotlin.android") version "2.3.20" apply false
}
CI の JDK 17 固定・AGP 更新・R8 差分の吸収は、Android 17 の準備を兼ねつつ Android 16 対応を通すための整地でもある。
補足:現場の Kotlin バージョン実態と移行コスト
表の「Kotlin 2.3.20」はあくまで推奨基準。実際の現場では 1.9.x 系がまだ多く残っている。日本の金融・公共・大規模案件は特に保守的で、「安定しているから上げない」判断が長く続きやすい。
下図は JetBrains の公開エコシステムデータおよびコミュニティ観察にもとづく 2026年初時点の推計 。

(推計値。正確な版別シェアは JetBrains Developer Ecosystem Survey の最新版を参照)
1.9.x から 2.x に上げる場合、Kotlin 単体ではなく Compose・Coroutines・AGP の一括更新になることが多い。K2 コンパイラへの切り替えで型推論の挙動が一部変わり、ビルドエラーが出るケースがある。「今の 1.9.x で動いているアプリを今すぐ上げる必要はない」という判断も現実的な選択肢。
| 現在の Kotlin | Compose Compiler 方式 | 最低 AGP | 升格時の主な注意 |
|---|---|---|---|
| 1.9.x | 従来の compose_compiler_extension_version |
8.x | 現状維持可。ただし EOL 近い |
| 2.0.x | Compose Compiler Plugin(Kotlin plugin に統合) | 8.4 以上 | Plugin 方式への切り替え必須 |
| 2.1.x | 同上 | 8.7 以上 | K2 デフォルト化。Compose の安定度最良 |
| 2.3.x | 同上 | 9.0 以上 | 2026年現在の最前線。AGP 9.1 前提 |
Android 17 で先に押さえたい動作変更
新機能より動作変更のほうが既存アプリへの影響が大きい。全アプリに効く変更に絞って先に確認する。
| 変更点 | 影響を受けやすいアプリ | 先に確認するところ |
|---|---|---|
usesCleartextTraffic 非推奨化の流れ |
HTTP を許可しているアプリ全般 | 検証環境・社内接続を network security config へ切り替え |
| URI 権限の暗黙付与廃止方向 | 共有・カメラ・添付ファイル渡しがあるアプリ | 明示的な権限付与に書き直し |
| IME 可視性(回転後)の挙動変化 | 入力フォームを持つすべての画面 | ログイン・申込・検索導線で回帰確認 |
| バックグラウンドオーディオ制約強化 | 再生・通話・音声通知系アプリ | フォアグラウンドサービス移行の要否確認 |
Android 16 ・17 同時対応のテスト優先度
Android 16 対応と Android 17 先行検証を並行するとき、「どちらの検証に何を必ず遭すべきか」が曖昧になりやすい。下表は「対応済みと見なせる条件」を紏展できるよう、テスト領域ごとの必須・優先度を定義する自分たちの QA 制御記刻として使う。
| テスト領域 | Android 16 本番 | Android 17 先行 |
|---|---|---|
| ログイン・会員導線 | 必須 | 必須 |
| WebView 画面 | 必須 | 必須 |
| push / 通知復帰 | 必須 | 優先 |
| バックグラウンド処理 | 必須 | 優先 |
| MDM / 企業端末制約 | 優先 | 優先 |
| Android 16/17 の新機能採用(予測変換・Compose 新 API 等) | 後回しでよい | 余力があれば |
日本の業務アプリに固有のリスク
海外発信の一般的な Android 対応記事ではほぼ触れられないが、日本の金融・公共・会員基盤系アプリには固有の引っかかりどころがある。「Android 16/17 が追加した新機能(通知チャネル変更・権限モデル刷新・Compose 新コンポーネント等)を積極的に取り込む」より「ログイン・決済・通知など既存の主要な画面フローが壊れていないか」を先に確認するプロジェクトは、下表の項目をチェックリストにして先に回すこと。
| 論点 | 詰まる理由 | 先にやる確認 |
|---|---|---|
| WebView | 会員・申込・決済導線でまだ多い | 認証、Cookie、リダイレクト、表示崩れ |
| 証明書・企業 Wi-Fi | 社内・業務端末で詰まりやすい | 通信失敗、証明書更新、社内 NW 動作 |
| MDM 制約 | 企業配布アプリで影響大 | 権限、バックグラウンド、配布制御 |
| push / バックグラウンド | 会員・金融・運用通知に直結 | 復帰、遅延、強化後の動作確認 |
| 端末更改タイミング | 利用者の OS バラつきが大きい | 対応 OS 範囲、QA 端末計画の見直し |
今やるならこの順番
- targetSdkVersion 36(Android 16)を含んだ更新を 2026年06月までにリリースする前提でリリース計画を確定する
- Android Studio・AGP・Kotlin・JDK の足場をそろえる
- Android 16 の主要導線テストと回帰を先に通す
- 並行で Android 17 専用ブランチを切って emulator と実機の検証レーンを立ち上げる
- behavior changes を security / media / connectivity から順に確認する
- targetSdk 37 を上げた CI を別で回す


