眾所周知,在國內(nèi)贤斜,用Xcode下載Simulator的速度奇慢無比策吠,進(jìn)度條經(jīng)常是原地不動,或者動了一段時間后告訴我time out而fail了瘩绒。猴抹。。簡直一大悲劇锁荔。近幾天為了解決Simulator的下載問題蟀给,查了不少資料,但很多解決方法是關(guān)于老版本Xcode的阳堕,不適用于Xcode 7跋理。經(jīng)過多種嘗試,我最終搞定了Xcode 7.3下的Simulators快速下載與安裝恬总,并寫此文予以分享前普。
Simulator 下載
首先要獲取Simulator的官方直接下載地址,然后可以用迅雷等工具下載壹堰。
- 打開終端拭卿,輸入如下命令,啟動Xcode:
/Applications/Xcode.app/Contents/MacOS/Xcode
這樣做是為了將Xcode的一些輸出信息直接顯示在終端上查看贱纠,待會我們會在這里看到Simulator的下載地址峻厚。
- 在Xcode的Simulator下載列表中點(diǎn)擊下載某個Simulator(我這里以9.2的Simulator為例),過幾秒后再點(diǎn)取消下載谆焊。則在與之關(guān)聯(lián)的終端上會出現(xiàn)如下信息:
DVTDownloadable: Download Cancelled. Downloadable: https://devimages.apple.com.edgekey.net/downloads/xcode/simulators/com.apple.pkg.iPhoneSimulatorSDK9_2-9.2.1.1451951473.dmg.
其中的url就是我們需要的Simulator的直接下載地址目木。可以將之拷貝到迅雷等工具中下載懊渡,得到一個dmg結(jié)尾的文件刽射,但不要急著雙擊安裝。
Simulator安裝
接下來需要將之前下載的dmg文件放到指定目錄中剃执。在終端中執(zhí)行以下命令:
localhost:~ zklgame$ cd Library/Caches/com.apple.dt.Xcode/
localhost:com.apple.dt.Xcode zklgame$ ls
Cache.db Downloads
Cache.db-shm PlaygroundResults
Cache.db-wal fsCachedData
CachedDesktopImageScaled.tif project.xcworkspace
localhost:com.apple.dt.Xcode zklgame$ ls Downloads/
8140e94628f76be6f79c074d77f1e24f11b51e03.dvtdownloadableindex
aceda22e568c65ee7449e27f4559cf7397ede62c.dvtdownloadableindex
com.apple.pkg.iPhoneSimulatorSDK8_1-8.1.1.1434581536.dmg
com.apple.pkg.iPhoneSimulatorSDK8_2-8.2.1.1434581536.dmg
localhost:com.apple.dt.Xcode zklgame$
可以見到誓禁,其中有一個Downloads文件夾,是用來放下載的dmg文件的肾档。如果之前沒有通過Xcode下載任何的Simulator摹恰,則這個文件夾是不存在的辫继,這時候只要手動創(chuàng)建該文件夾就行了。
將下載的dmg文件放入到這個文件夾中俗慈。
重新回到Xcode中姑宽,點(diǎn)擊下載9.2的Simulator,會發(fā)現(xiàn)此時進(jìn)度條一下子達(dá)到了大半的水平闺阱。這是因?yàn)閄code已經(jīng)找到了Downloads文件夾下的dmg文件炮车。
等個幾秒鐘,Xcode就會自動將Simulator安裝好酣溃,如下圖所示:
任意打開一個工程瘦穆,可以看見Xcode已經(jīng)自動將新安裝的Simulator進(jìn)行了配置更新:
接下來就可以愉快地玩各種版本的模擬器了?(? ???ω??? ?)?。
可能出現(xiàn)的問題
以下幾個問題是我在安裝的過程中碰到的赊豌,附上我的解決方法扛或。
OS Version 不更新
按以上步驟安裝后,有可能Xcode沒有自動配置新安裝的Simulator碘饼,那就需要自己動手Create a new simulator了熙兔,如下圖所示:
在下拉OS Version進(jìn)行選擇的時候,可能不會顯示新安裝的Simulator艾恼,這時候黔姜,重啟Xcode或者M(jìn)ac,應(yīng)該能解決蒂萎。秆吵。。
Create時顯示Invalid runtime
Create a new simulator五慈,最后一步點(diǎn)擊Create時纳寂,可能提示Invalid runtime: com.apple.CoreSimulator.SimRuntime.iOS-X-X的信息。這時需要去相應(yīng)的文件夾看看相關(guān)的simruntime文件的信息泻拦。在終端中執(zhí)行以下命令:
localhost:Profiles zklgame$ cd /Library/Developer/CoreSimulator/Profiles/Runtimes/
localhost:Runtimes zklgame$ ls
iOS 8.1.simruntime iOS 8.2.simruntime iOS 9.2.simruntime
localhost:Runtimes zklgame$ open .
可以看到毙芜,相應(yīng)Simulator的simruntime文件已經(jīng)在了,但是Xcode提示Invalid runtime争拐,可能是simruntime文件的權(quán)限問題導(dǎo)致的腋粥。
選擇相應(yīng)的simruntime文件,Command + i查看其信息架曹“澹可以看到共享與權(quán)限一欄中的信息:
解鎖后添加本人的訪問權(quán)限為讀與寫:
接著重啟Xcode和Mac,應(yīng)該能夠解決問題了绑雄。展辞。。
結(jié)語
以上是我的一些經(jīng)驗(yàn)與心得万牺,若有不足之處罗珍,請予指正洽腺。希望這篇文章對你有所幫助_。