Xcode 27 / iOS 27 Beta のリリースノートから iOS 開発者が押さえておきたい変更点をまとめた #WWDC26

Xcode 27 / iOS 27 Beta のリリースノートから iOS 開発者が押さえておきたい変更点をまとめた #WWDC26

2026.06.11

業務で iOS アプリを保守していると、毎年この時期は気が抜けない。WWDC に合わせて公開されるベータ版のリリースノートには、既存アプリの動作を左右する破壊的変更が紛れ込んでいることがあるからだ。

2026年6月9日(日本時間)、WWDC2026 に合わせて Xcode 27 BetaiOS & iPadOS 27 Beta が公開された。今年も例外ではなく、対応を怠るとアプリが起動しなくなったり表示が崩れたりする変更がいくつも含まれている。

本記事では公式ドキュメントをもとに、iOS 開発者が押さえておきたい変更点をまとめる。あわせて、今年3月に書いた破壊的変更の予測記事の答え合わせもおこなっていく。

リリース概要

項目 内容
同梱言語 Swift 6.4
対応 SDK iOS 27 / iPadOS 27 / tvOS 27 / macOS 27 / visionOS 27
動作要件 macOS Tahoe 26.4 以降
アーキテクチャ Apple silicon 専用(Intel Mac 非対応)

かねてより噂されていたが、とうとう Intel Mac がサポート対象外となってしまった。

予告されていた変更がどうなったのか答え合わせ

今年3月に「iOS 27 / Xcode 27 の破壊的変更に備えて準備しておこう」という記事を書いていた。WWDC25で「次のメジャーアップデートで廃止します」と予告されていた変更がいくつかあり、早期のアップデートを促していた。

当時の「次のメジャーアップデート」とは iOS 27 / Xcode 27 を指していたのか、答え合わせも兼ねてまとめていく。

https://dev.classmethod.jp/articles/ios27-xcode27-migration-preparation-guide/

UIKit シーンベースライフサイクルが必須化

既存アプリへの影響が大きい破壊的変更だ。iOS 27 SDK でビルドされたアプリは、シーンベースのライフサイクル(UIScene)を使っていないと起動に失敗する。

iOS & iPadOS 27 Beta Release NotesUIKit > Deprecations に以下の記述があった。

Apps built with the latest SDK must adopt the scene-based life cycle or they fail to launch.

(意訳) iOS 27 SDK を使ってビルドしたアプリは、シーンベースのライフサイクルを採用しないと起動に失敗する。

「fail to launch (起動しない)」 とはっきり書いてある。予告の通りとなった。移行の詳細については後述する。

Liquid Glass の義務化(UIDesignRequiresCompatibility の無効化)

UIDesignRequiresCompatibility の公式ドキュメントには以下の記述がある。

The system ignores this key when you build for iOS 27 or later, iPadOS 27 or later, Mac Catalyst 27 or later, macOS 27 or later, or tvOS 27 or later.

(意訳) iOS 27以降、iPadOS 27以降、Mac Catalyst 27以降、macOS 27以降、またはtvOS 27以降向けにビルドする場合、システムはこのキーを無視する。

iOS 27 SDK でビルドしたアプリでは、このキーが完全に無視される。 つまり YES に設定していても Liquid Glass を回避できなくなる、ということで、WWDC25 での「次のメジャーリリースで削除」という予告通りの結果だった。

iOS 27 では Liquid Glass の 透明度スライダー(ユーザーがガラス効果の強度を段階的に調整できる)も追加されており、「改良しつつ義務化」という路線になっている。開発者にとっては「逃げ道がなくなった」という点が重要だ。

❌ iPhone 11(A13)のサポート終了

iPhone 11 のサポートは継続されることが確認された。AI機能の強化にもかかわらず、Apple は既存デバイスとの互換性を優先する方針を示しており、iOS 27 は iOS 26 と同じデバイス(iPhone 11 以降)をサポートする。今年は切り捨てなしだ。

総じると、「Apple が公式に予告していた変更(UIScene、Liquid Glass)はほぼ的中し、噂レベルのデバイス切り捨て予測は外れた」という結果だった。

目玉の機能

UIScene ライフサイクルの完全必須化

今回の最大トピックだ。iOS 26 の時点では UIApplicationDelegate だけでも動作していたが、iOS 27 SDK でビルドすると 起動時にアサートが発生してクラッシュする。移行ガイドは TN3187 だ。

UIApplicationSceneManifest の追加や SceneDelegate への移行が済んでいないアプリは早めに確認しておこう。ただし「対象 SDK でビルドした場合」なので、iOS 26 SDK のままビルドしていれば影響は出ない。App Store の SDK 義務化タイミング(過去パターンから 2027年4月頃と予測)までには対応が必要だ。

移行時に特に注意すべき箇所については「iOS 27 / Xcode 27 の破壊的変更に備えて今から準備すべきこと」にまとめているので、そちらを参照してほしい。

TrustInsights フレームワーク(新規)

セキュリティ系の新フレームワークとして TrustInsights が追加された。公式の説明をざっくり訳すと以下の通りだ。

プライバシーを保護しながら、トランザクションが強制的な行為(coercive activity)の可能性がないかを評価する。

要は 「ユーザーが詐欺や脅迫によって操作を強いられていないか」をシステム側に評価してもらえる仕組み だ。銀行・決済・仮想通貨ウォレットなどのアプリが想定ユーザーで、高リスクと判定されたら追加認証を挟む、という使い方になるだろう。

評価はシステムが行い、生のシグナルはアプリに渡らない設計のようだ。活用事例の報告が期待される。

それ以外の機能(ひとこと言及)

AsyncImage:HTTP キャッシュ対応

AsyncImage が標準 HTTP キャッシュヘッダーを尊重するようになった。URLRequestcachePolicy 指定、View.asyncImageURLSession(_:) でのカスタム URLSession 設定も可能になっている。小さいながらも嬉しい改善だ。

TextKit:NSTextTable が UIKit でも使えるように

NSTextTable とその関連型が iOS 27 から UIKit クライアントでも利用可能になった。

SwiftUI:新 Document API

ReadableDocument / WritableDocument プロトコルが追加された。非同期の読み書き、進捗報告(Subprogress)、URL への直接アクセスが可能だ。新規アプリの場合、ReferenceFileDocument より新 API が推奨されている。

TabView の選択挙動変更(破壊的)

iOS 27 SDK ビルドでは、非表示のタブや無効なタブを selection で指定するとクラッシュする可能性がある。動的にタブを追加・削除しているアプリや、条件付き表示を使っているアプリは選択ロジックを見直す必要がありそうだ。

In apps built with the iOS 27.0 and iPadOS 27.0 SDKs, a TabView enforces that its selection is set to a visible tab. TabView might crash when its selection is set to a hidden or otherwise unavailable tab. (164516837)

その他の変更点(ひとことまとめ)

Xcode 側

  • Interface Builder でシミュレータ不要でコンパイルできる toolchain モードがデフォルト有効になった。CI 環境での高速化に効く
  • swift test --repeat-until fail でフレーキーテストを反復実行できるようになった
  • Instruments で Swift Concurrency の可視化が大幅強化された(Swift Executors インストゥルメント新規追加、Task Collection トラック追加)
  • ブリッジングヘッダ使用プロジェクトでの最初の LLDB po コマンドが大幅に高速化された
  • ld64 リンカーが削除され、-ld_classic オプションも廃止された
  • On Demand Resources が非推奨になった。Background Assets へ移行すること

iOS / SDK 側

  • Foundation Models に画像入力(Attachment)・Private Cloud Compute(サーバモデル)対応が追加され、LanguageModel プロトコルでサードパーティのクラウドモデルも統一 API で扱えるようになった
  • オンデバイスで独自モデルを動かすための新フレームワーク Core AI が追加された。Foundation Models API とも統合されている
  • MDM・プロファイル配布・ソフトウェアアップデート等で TLS 1.2 最低要件が強制化された。管理環境での確認を
  • MXMetricManager / MXMetricManagerSubscriber が非推奨になり、AsyncStream ベースの MetricManager への移行が必要。CrashDiagnosticterminationCategory が追加、MemoryExceptionDiagnostic(メモリ制限超過による終了)も新設された
  • List 以外(LazyVStackLazyVGrid など)でもドラッグ並べ替えができる reorderable API が追加された。watchOS 27.0 でも初対応
  • HealthKit に更年期状態と閉経後出血の新サンプルタイプが追加された
  • Metal 4.1 に対応した

新フレームワーク群

  • Now Playing:ロック画面・コントロールセンター・CarPlay 向けの統一再生インターフェース
  • MusicUnderstanding:音楽の拍子・テンポ・調・楽器アクティビティ等を解析する新フレームワーク
  • TrustInsights:ソーシャルエンジニアリング脅威の検出支援(セキュリティ重視アプリ向け)
  • CrashReportExtension:アウトプロセスで動作するカスタムクラッシュレポートの実装が可能に
  • Evaluations:AI 機能の動作を評価・検証するための新フレームワーク

気になる点

TrustInsights のプライバシーへの影響

前述のとおり銀行・決済系アプリには刺さる機能だが、どんなシグナルをシステムが収集してリスク評価しているのか が beta 1 時点では不明だ。Privacy Manifest への記載が必要かどうか、Entitlement の申請が必要かどうかも気になる。beta が進むにつれて情報が出てくるのを追いかけたいと思う。

Foundation Models のマルチモーダル対応

これまでの Foundation Models はテキスト入力に対してテキストが返ってくるだけで、クラウド LLM と比べると機能面での制約が大きかった。今回、画像を入力ソースとして扱える Attachment API が追加されたことで、アプリとしての表現の幅が一気に広がりそうだという点が個人的に最も気になっている。

詳しいドキュメント「マルチモーダルなプロンプトを用いた画像分析」も用意されている。beta が安定してきたら改めて深掘りしたいところだ。

ただ、beta 1 時点では Known Issues が多数報告されており、実際にどこまで使えるかはまだ見えていない。beta が進むにつれて安定性がどう改善されるかを注目していきたい。

Xcode 27 が Apple Silicon 専用になった影響

Xcode 27 は Intel Mac では動作しない。これ自体は以前から予告されていたが、CI/CD 環境への影響が気になる。Bitrise や Xcode Cloud など、ビルドスタックのアップデート対応状況を確認しておく必要がある。

特に Bitrise は Intel ベースのスタックが残っていることがあるため、Xcode 27 へのスタックアップグレードは Apple Silicon 専用マシンへの移行とセットになるが、基本的には osx-xcode-27.0.x のような専用に用意されているスタックを利用すればよいだろう(2026年6月11日時点では osx-xcode-27.0.x-edge のみが提供されている)。

Swift Charts の潜在的クラッシュ

deployment target が iOS 27.0 未満の場合、Chart クロージャ内の if 条件でランタイムクラッシュの可能性があるとのこと。@ChartContentBuilder を使った関数への切り出しで回避できる。見落としやすいので注意が必要だ。

まとめ

業務で iOS アプリを保守している開発者目線では、今回の最大の破壊的変更は UIScene ライフサイクルの完全必須化UIDesignRequiresCompatibility の無効化 だ。対応が済んでいないアプリは iOS 27 SDK でビルドすると起動しなくなったり、表示が崩れてしまったりする。

答え合わせの結果としては、「Apple が公式に予告していた変更はほぼ予告通りに実施され、噂レベルの予測は外れた」という形になった。

一方、機能面では、TrustInsights というセキュリティ系の新フレームワークが気になっている。銀行・決済アプリには刺さる機能で、API の詳細が出てきたら改めて記事にしたいと思う。

beta はこれから 2〜4 まで進む中で情報が増えていくので、引き続き追いかけていきたい。

参考リンク

この記事をシェアする

関連記事