每個 Xcode 版本都會有相容的系統版本,像是 Xcode 13.1 支援的最高 iOS 版本是 iOS 15.2.1 (實測)
但如果今天將一台 iOS 15.4 的 iPhone 接到 Xcode 13.1 上的話
Xcode 會顯示「unsupported OS Version」,像是下面這張圖
▲ 圖取自網路上
那該如何讓 Xcode 在不更新新版本的情況下,也能支援新系統的裝置呢?
方法很簡單,只要幾個步驟就可以了~~~
操作期間,Xcode 記得先 Command+Q 關閉喔~
點擊左上角 ?,選「關於這台 Mac」
切到「儲存空間」,點擊「管理」
左側切到「開發者」,然後將右側的「iOS 裝置支援」裡的所有支援都刪除
上方的「Xcode 計畫案建立檔案」如果你電腦空間不足的時候,可以先刪這邊,可以清出不少空間~
像我的就佔了 13G 多
到這個 GitHub 裡下載你需要的 iOS Device Support 檔案
這裡以 iOS 16.0 來作為示範,雖然手邊沒有裝置系統是 iOS 16.0 (哈哈哈哈)
將解壓縮後的資料夾 (這裡示範的為 16.0),複製到下列路徑
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
文字版解說
1. 開啟 Finder,點擊「應用程式」
2. 對 Xcode.app 右鍵,選「顯示套件內容」,點擊 Contents 資料夾
3. 再點擊 Developer 資料夾
4. 再點擊 Platforms 資料夾
5. 再點擊 iPhoneOS.platform 資料夾
6. 再點擊 DeviceSupport 資料夾
7. 將解壓縮後的資料夾貼到這裡
在 Day05 那篇開頭有提到說「更新 iOS,Xcode 就要跟著更新」
這篇就是來解決這個問題的!
但如果是 Xcode 大版本更新的話 (像 Xcode 13 -> Xcode 14 這種)
還是會建議下載新版本 Xcode,並將其改名,讓新舊版 Xcode 並存
一方面是做到版本控制,一方面是測試既有的 Code 在新環境上會不會有問題