背景
蘋果要求自 2024 年 4 月 29 日起,所有提交至 App Store 的 App 都必須使用 Xcode 15 或更高版本構建,詳情請參考 蘋果官方聲明,并且 Xcode 15 不再支持構建 iOS 12 之前的系統,詳情可參考 Xcode 15 發布說明。
蘋果宣布自 2024 年 5 月 1 日起,App 代碼中如使用到蘋果官方所列的 API 列表 中的 API,需要在 App 的隱私清單列表中聲明相關原因,如使用到蘋果官方所列的 三方 SDK 列表 中的 SDK,三方 SDK 需要提供相應隱私清單配置,才能將全新 App 或新版本 App 上傳到 App Store Connect,詳情請參考 蘋果官方聲明。
現狀
目前 mPaaS 已在 10.2.3.40 及以上的基線版本中完成對 Xcode 15 版本下的適配和測試工作,使用 10.1.68 基線(已廢棄)或更早的基線請升級到 10.2.3 最新版本,且不再支持 iOS 12 之前的系統。
升級基線
根據您當前的基線版本,選擇對應的升級方式。
當前基線為 10.2.3 主基線
請先參考 mPaaS 10.2.3 的使用以及適配 iOS 17 升級到 10.2.3 最新基線并進行相關適配。
當前基線為定制基線
如果您使用的是定制基線,請搜索群號 41708565 加入釘釘群或提交工單咨詢對應的售后及技術支持人員,是否可切換到 10.2.3 基線。
升級方式
基于 Extension 插件升級
使用 mPaaS Xcode Extension 插件升級 SDK/組件,您可以選擇以下兩種方式:
您需要根據自身情況選擇升級方式。如果您:
已經使用 Extension 插件管理組件依賴,但當前使用的基線版本低于 10.2.3,可使用 使用 mPaaS Xcode Extension 功能升級至 10.2.3 版本。
說明當前使用的基線版本可在插件的 基線升級 中查看。
已經使用插件管理組件依賴,且當前使用的基線版本為 10.2.3,可使用 使用 mPaaS Xcode Extension 功能升級所使用到的模塊。
未使用插件管理組件依賴。可按照以下步驟進行升級:
使用 使用 mPaaS Xcode Extension 功能選擇 10.2.3 版本基線并添加所需模塊。
基于 CocoaPods 升級
按照以下步驟,即可安裝 10.2.3 版本的最新 SDK:
首先確保 Podfile 中 mPaaS 組件的版本號為 10.2.3。
執行
pod mpaas update 10.2.3
。如果提示命令報錯,需通過
pod mpaas update --all
命令先更新插件,再重新執行。執行
pod install
。
升級注意事項
通過 Extension 插件 升級到 10.2.3.30 及以上的基線版本時,如添加了威脅感知、國密等模塊,如下圖所示:
在主工程中需要手動在 Building Setting 中的 Other link flag 里添加系統庫 resolv。
否則會出現如下報錯:
API 變更
本次 Xcode15 適配暫無接口使用的變化。
適配 Xcode 15 更新的庫清單
移動網關
移動調度
數據同步
消息推送
國密
多媒體
小程序
離線包
安全鍵盤
部分內部依賴組件
測試驗證范圍
由于蘋果工具鏈的升級為黑盒操作,經常會帶來穩定性等問題,在完成 App 對 Xcode 15 的適配后,建議對 App 進行全面回歸測試。
且由于 Xcode 15 打包的安裝包在 iOS 17 及之后的 URL 解析從 RFC1738/1808 更新為 RFC 3986 可能會導致 URL 相關解析異常,如使用到 URLWithString和InitWithString
等 API,請進行相關驗證和適配,詳情請參考 蘋果官方說明。