情報
2021年4月移行、アプリ審査の提出時にはXcode 12ビルドが必須になります。
2021年4月以降、App Storeに提出するiOS AppとiPadOS Appはすべて、Xcode 12およびiOS 14 SDKでビルドしなければなりません。
事例
私が現在担当しているアプリでも移行を実施しましたので、結果を共有します。
移行作業は例年に比べると軽微でした。
移行環境
- Xcode 11.3 → 12.1
アプリ概要
- ファイナンス系
- 画面数:約120
- Swiftステップ数:約85,000
- 使用Framework
- WebKit
- StoreKit
- LocalAuthentication
- PassKit
- WatchConnectivity
- UserNotifications
ライブラリ
ライブラリ管理ツール(Carthage)への影響
- CarthageビルドがXcode 12で失敗する問題があります。公式リポジトリで回避方法が公開されていますので、それを使うことにしました。
- Xcode 12でビルドするためのシェルスクリプトが公開されているので、それを使うという回避方法で、ソースの修正等は必要ありませんし、Cartfileや導入ライブラリに対しての作業は特にありませんでした。
導入済みライブラリへの影響
11.3時代のバージョンそのままでも、特に問題はありませんでした。
- Firebase Analytics - 6.32.0
- Firebase Crashlytics - 6.32.0
- Lottie - 3.1.4
- KeychainAccess - 3.2.0
- RealmSwift - 3.18.0
ソースコードへの影響
Xcode 12のサジェスチョンに従って自動FIXした箇所が数カ所ありました。
以下のような、「再代入していないvar変数をletに変更」といった軽微なもので、コンパイルはさくっと通りました。
- var foo = self.bar
+ let foo = self.bar