很多人發(fā)現(xiàn)升級(jí)完xcode之后,模擬器window選項(xiàng)里沒(méi)有調(diào)節(jié)xcode大小的選項(xiàng),其實(shí)很簡(jiǎn)單,鼠標(biāo)光標(biāo)放置模擬器右下角,即可隨意拉伸模擬器,另外附上x(chóng)code9內(nèi)置模擬器的9個(gè)技巧
1. 在全屏模式下使用Xcode模擬器
當(dāng)你使用13寸的 Mac 時(shí),Xcode 的全屏模式是唯一救星,以前不能在全屏模式下使用Xcode模擬器,但現(xiàn)在開(kāi)始可以使用了。
從Xcode 9 beta 3開(kāi)始,這個(gè)功能將會(huì)是系統(tǒng)預(yù)設(shè)的,所以你無(wú)需做任何事情來(lái)啟用它
PS:可能某些人預(yù)設(shè)情況下是關(guān)閉此功能的,不用擔(dān)心,可以隨時(shí)通過(guò) Apple Internal 選單啟用此功能。如果想在新的模擬器中探索更多的秘密功能,可以啟用Apple 隱藏的內(nèi)部選項(xiàng)。

所以,你需要在根目錄中創(chuàng)建一個(gè)名為“AppleInternal”的空文件夾,請(qǐng)執(zhí)行下面的命令并重新啟動(dòng)模擬器:
sudo mkdir /AppleInternal
新的選項(xiàng)中項(xiàng)目應(yīng)該會(huì)顯示出來(lái) ??
注意:我是從Xcode 9 beta 3 的模擬器上測(cè)試這個(gè)步驟,如果你還沒(méi)有下載,請(qǐng)?jiān)诠倬W(wǎng)下載最新版 Xcode 安裝,
2. 一次打開(kāi)多個(gè)模擬器
還記得在不同的模擬器上測(cè)試應(yīng)用程序的挫敗感嗎?在此之前,你一次只能打開(kāi)一個(gè)模擬器,雖然有許多“hacks”教你如何在舊版本的Xcode中打開(kāi)多個(gè)iOS模擬器。但是在Xcode 9當(dāng)中,這個(gè)功能是直接可以使用的。
3. 縮放模擬器就像調(diào)整視窗大小一樣簡(jiǎn)單
在Xcode 9之前,我們只有透過(guò)”Scale options”才能調(diào)整模擬器的大小,現(xiàn)在Apple終于開(kāi)放調(diào)整模擬器窗口的大小。如果一次有多個(gè)模擬器打開(kāi),這個(gè)小細(xì)節(jié)的調(diào)整這是非常有用,可以幫助你有效地組織工作空間。
4. 記錄模擬器的視頻
在Xcode 9官方的”What’s new”文檔中,蘋(píng)果聲稱(chēng)現(xiàn)在可以錄制模擬器屏幕視頻,即使在舊版本中,只要使用simctl也可以做到,在界面上找不到地方可以啟用視頻錄制(除了iOS 11中的內(nèi)置屏幕錄制)。
要獲取視頻檔案,請(qǐng)執(zhí)行以下代碼:
xcrun simctl io booted recordVideo --type=mp4
booted– 表示simctl選擇當(dāng)前啟動(dòng)的模擬器,如果你有多個(gè)已啟動(dòng)的模擬器,simctl將選擇當(dāng)前正在操作的那一個(gè)模擬器。
5. 使用 Finder 共享文件到模擬器
現(xiàn)在,模擬器有了 Finder 擴(kuò)展功能,你可以直接從 Finder 窗口共享文件。
你也可以執(zhí)行以下simctl命令,使用圖像/視頻文件進(jìn)行類(lèi)似操作:
xcrun simctl addmedia booted
很高興有這樣的操作方法,但是對(duì)我而言,將文件拖放至模擬器窗口似乎快很多。
6. 模擬器上打開(kāi)URL
這個(gè)也能使用simctl,所以你也可以在舊版本的模擬器上打開(kāi)自定義的URL schemes。
拖拽
以你指定的任何URL執(zhí)行以下命令:
xcrun simctl openurl booted
關(guān)于Apple所有URL schemes的列表,請(qǐng)查看文檔.
7. 快速找到應(yīng)用程序的文件夾
再來(lái)介紹一個(gè)simctl的命令,你可以使用單個(gè)命令在文件系統(tǒng)上獲取應(yīng)用程序的資料夾,只需要知道應(yīng)用程序的bundle identifier并執(zhí)行以下命令:
xcrun simctl get_app_container booted
或者你可以使用open命令在 Finder 中更快打開(kāi)目標(biāo)文件夾:
open `xcrun simctl get_app_container booted ` -a Finder
8. 使用命令行參數(shù)(Command Line Args)在模擬器中啟動(dòng)應(yīng)用程序
使用simctl,你也可以從終端機(jī)上啟動(dòng)應(yīng)用程序,并在其中傳遞一些命令列參數(shù)(甚至可以設(shè)置一些環(huán)境變量)。如果你想在應(yīng)用程序中插入一些除錯(cuò)行為,這將非常有用。
執(zhí)行下列命令可以讓你完成這項(xiàng)任務(wù):
xcrun simctl launch --console booted
你可以從CommandLine.arguments獲取這些命令行參數(shù)(這里是文件的鏈接)。
9. 透過(guò)Bundle ID獲取完整的應(yīng)用程序消息
有時(shí)找出應(yīng)用程序的檔案或暫存數(shù)據(jù)位于文件系統(tǒng)上的位置很有用,如果你需要比simctl get_app_container更全面的資訊,simctl還有一個(gè)很好用的小工具,名為appinfo,它會(huì)以下列格式顯示相關(guān)資訊:
{
ApplicationType = User;
Bundle = ;
BundleContainer = ;
CFBundleDisplayName = TestiOSApp;
CFBundleExecutable = TestiOSApp;
CFBundleIdentifier = "com.ahmed.app.TestiOSApp";
CFBundleName = TestiOSApp;
CFBundleVersion = 1;
DataContainer = ;
GroupContainers = ? ? {
};
Path = ;
SBAppTags = ? ? (
);
}
執(zhí)行下面的命令并觀察輸出結(jié)果:
xcrun simctl appinfo booted
后記
iOS模擬器是一個(gè)非常強(qiáng)大的工具,只要知道所有的細(xì)節(jié)和技巧,它可以讓你的開(kāi)發(fā)過(guò)程加快許多,身為一個(gè)好的工程師,熟悉你的開(kāi)發(fā)工具是必然的。
在Flawless中,iOS模擬器對(duì)我們來(lái)說(shuō)非常重要,這個(gè)產(chǎn)品是一個(gè)iOS模擬器插件,允許工程師在模擬器內(nèi)部檢查任何設(shè)計(jì),對(duì)于新Xcode
9和Simulator版本的推出,我無(wú)以言表,已經(jīng)等不及公開(kāi)版本推出!我們可以實(shí)現(xiàn)更多有用的功能來(lái)保持iOS應(yīng)用程序的視覺(jué)層次感。