Xcode 11以上與Xcode 10的差異
Xcode 11開始的開發工具不管是新建立的專案或是整個UI介面都與Xcode 10系列有所差異,本篇就簡短的列出幾個不一樣的地方:
一. 專案架構
Xcode 11 開始新建專案時會多一個檔案(或兩個..看你是用Swift還是Objective C建立專案),就是SceneDelegate.swift(或是SceneDelegate.h, SceneDelegate.m),而這個檔案是用來作什麼的呢?以下就來說明一下:
1. 把之前在AppDelegate裡的applicationWillResignActive, applicationDidEnterBackground..等改到SceneDelegate裡面且名稱稍微有變,變成sceneDidEnterBackground, sceneWillResignActive..等,亦即原本AppDelegate全權處理App生命週期和UI生命週期變成只處理App生命週期,而UI生命週期則改為交由SceneDelegate負責,參考下圖:
Xcode 10 原先的模式
Xcode 11 以後的模式
SceneDelegate
2. AppDelegate裡面也拿掉了UIWindow *window的宣告改放到SceneDelegate裡面
二. Xcode 工具的差異
Xcode 10系列的General裡面包含了signing,但在Xcode 11後是與Capabilities合併在一起
以上大致就是目前發現的差異的地方
沒有留言:
張貼留言