Xcode 9 —進(jìn)階的 iOS Simulator

1、 在 Xcode 的全屏模式下使用 Simulator

如果你用的是 13 寸的電腦,那么 Xcode 的全屏模式你應(yīng)該早已習(xí)慣,其實即使是配有顯示器,我還是習(xí)慣在 Xcode 的全屏模式下開發(fā)。很可惜的是不能在 Xcode 的全屏模式下使用 Simulator, 自 Xcode 9b3 以后,這個問題便不存在了:

這個功能并不是對所有人默認(rèn)開放的,如果不幸你的 Xcode 沒有默認(rèn)開啟這個功能也不要灰心,我們可以通過打開 Apple Internal menu 來啟用這個功能,通過 Apple Internal menu 你能挖掘出 Simulator 的更多新特性。那么問題來了,怎么開啟 Apple Internal menu 呢?首先,在更目錄里創(chuàng)建 AppleInternal 文件夾,然后重啟 Simulator:

cd ~/

sudo mkdir /AppleInternal

重啟 Simulator 后就可以看到 internal 選項

再次重申,你需要下載 Xcode 9b3 或更新的版本才行

2、同時打開多個模擬器

還記以前我們在不同尺寸的手機(jī)上去適配嗎?通常情況下,我們通過 Storyboard 可以直觀的看到 View 在不同尺寸設(shè)備上的形態(tài),然而純 Code 碼出的界面就得多次啟動不同的模擬器來進(jìn)行可視化調(diào)試了。作為開發(fā)者,你肯定也想過,要是能同時啟動多個模擬器多好,那么很高興的告訴你,在 Xcode 9 中這已不再是問題了。

3、拖動放大或縮小 Simulator

在 Xcode 9 之前, 我們需要通過 command + 1、2、3、4 來對 Simulator 的大小進(jìn)行調(diào)整,Xcode 9 以后就不用這么麻煩,我們可以通過拖拽來控制模擬器的大小了。如果您有多個模擬器打開,這是非常有用的一些細(xì)節(jié),它可以幫助你有效地組織工作空間。

4、Simulator 屏幕捕捉

在 Apple 官方的 “What’s new” Xcode 9 文檔中,蘋果聲稱現(xiàn)在可以錄制模擬器屏幕的視頻。 其實這并不新鮮,即使在舊版本中我們也可以通過 simctl 實現(xiàn)這樣的功能。 您可以從界面啟用視頻錄制(除了iOS 11中的內(nèi)置屏幕錄制)。

執(zhí)行 command 的命令,就可以得到我們想要錄制的視頻了。

1

xcrun simctl io booted recordVideo --type=mp4

booted —— 即是 simctl 當(dāng)前選中的模擬器,如果當(dāng)前有多個模擬器,那么選中的活動的 Simulator 為準(zhǔn)。

5、Finder 和 Simulator 共享文件

現(xiàn)在,Simulator 具有 Finder 擴(kuò)展,我們可以直接從 Finder 窗口共享文件給 Simulator 。

當(dāng)然,如果你使用的是舊版本的 Xcode ,我們也可以使用 simctl 命令來進(jìn)行類似操作:

xcrun simctl addmedia booted

這個功能太棒了,畢竟,我更喜歡通過拖拽來實現(xiàn) Simulator 和 Finder 的文件共享。

6、 通過 Simulator 打開 URLs

通過 simctl 也可以實現(xiàn) Simulator 打開 URLs, 所以你也可以在舊的模擬器上打開自定義的 URL。

執(zhí)行下面的 shell 命令

xcrun simctl openurl booted

Apple 官方文檔 check out the documentation

7、快速打開 app 的文件系統(tǒng)

通過 simctl 你只需要簡單的執(zhí)行下面一句命令,你就能獲取 app 的文件系統(tǒng),但是,你得知道 bundle identifier:

xcrun simctl get_app_container booted

或者您可以通過 open 命令在 Finder 中快速打開目標(biāo)文件夾:

open `xcrun simctl get_app_container booted ` -a Finder

8、通過 Command 打開 Simulator 中的 APP

有了 simctl ,你可以通過 Command 啟動 Simulator 中的 app, 或者做一些環(huán)境變量的控制,這在自動化測試中是非常重要的。

你只要使用一下命令即可實現(xiàn):

xcrun simctl launch --console booted

9、 通過 Bundle ID 獲取 app 的 info 信息

有時候,我們想獲得 app 的 更多的信息,可以通過 simctl appinfo 獲得以下格式的信息:

{

ApplicationType = User;

Bundle = ;

BundleContainer = ;

CFBundleDisplayName = TestiOSApp;

CFBundleExecutable = TestiOSApp;

CFBundleIdentifier = "com.ahmed.app.TestiOSApp";

CFBundleName = TestiOSApp;

CFBundleVersion = 1;

DataContainer = ;

GroupContainers =? ? {

};

Path = ;

SBAppTags =? ? (

);

}

執(zhí)行以下命令你就能獲取以上格式的信息:

xcrun simctl appinfo booted

最后……

iOS Simulator 功能強(qiáng)大,是我們開發(fā)中必備的神器,當(dāng)你掌握了它的相關(guān)細(xì)節(jié)以及使用技巧可以極大的提高你的開發(fā)效率。當(dāng)然,作為一個有追求的 iOS 工程師,你更應(yīng)該去挖掘它那些鮮為人知的功能,然后記得要告訴我喲!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 iOS Simulator 是 iOS 開發(fā)過程中不可或缺的一部分,我平時工作中也有很大一部分時間在使用 i...
    CNKCQ閱讀 2,911評論 10 36
  • Xcode 9 beta 版本出來后,出現(xiàn)了很多新特性,下面帶大家了解下。 搭配Xcode全屏模式進(jìn)行分屏 在終端...
    木木烈少閱讀 1,131評論 0 0
  • 很多人發(fā)現(xiàn)升級完xcode之后,模擬器window選項里沒有調(diào)節(jié)xcode大小的選項,其實很簡單,鼠標(biāo)光標(biāo)放置模擬...
    阿勇哥閱讀 1,643評論 0 0
  • 官方文檔鏈接 淘劵吧正文: What's New in Xcode 9 Xcode是用于為Apple TV,App...
    逾期的誓言閱讀 678評論 0 2
  • 成熟 就是說話前多幾分鐘思考 再行動 成熟 就是學(xué)會承擔(dān) 成熟 就是懂得隱藏真實的自己 不散播負(fù)能量給身邊的人 成...
    NiCoLe_219閱讀 194評論 0 0

友情鏈接更多精彩內(nèi)容