首页 > 解决方案 > Mac Simulator (Xcode) 等待启动命令

问题描述

在 Android 中,我可以运行它来启动模拟器

emulator @NAME

这等待它完全加载并准备好使用

adb wait-for-device

Mac 上的 iOS 模拟器是否有等价物?我使用默认的 Xcode 模拟器。所以模拟器的开始

xcrun simctl boot deviceID

并等待它完全加载(只是我在想的一个例子

xcrun simctl wait deviceId

标签: iosxcodemacossimulator

解决方案


有一个未完全记录的 simctl 命令xcrun simctl bootstatus deviceID

它不会出现在 的正常输出中xcrun simctl help,但确实有xcrun simctl help bootstatus

从我自己的游戏来看,如果你调用它,当 bootstatus 命令退出时,你的模拟器应该可以完全运行。但由于它没有完全记录下来,您的里程可能会有所不同。

xcrun simctl help bootstatus
Checks device boot status.
Usage: simctl bootstatus <device> [-bc]
    -b       Boot the device if it isn't already booted.
    -c       Continuously monitor boot status through multiple boot/shutdown cycles.

Monitors the specified device and prints boot status information until the device finishes booting. You can safely call this before you attempt to start booting the device.
/usr/bin/xcrun simctl bootstatus 88668721-0DF0-4167-8F3E-37190E8099C1
Monitoring boot status for AutomationDevice - iPad Air 2 - iOS 11.4 (88668721-0DF0-4167-8F3E-37190E8099C1).
[2019-05-23 03:50:56 +0000] Status=2, isTerminal=NO, Elapsed=00:00.
    Waiting on Data Migration
        Reason:(null)
        Migration Elapsed:00:00 seconds

[2019-05-23 03:50:56 +0000] Status=2, isTerminal=NO, Elapsed=00:01.
    Waiting on Data Migration
        Reason:Running plugin com.apple.MobileContainerManager.ContainerMigrator (ContainerMigrator.migrator, user-agnostic)
        Migration Elapsed:00:00 seconds

[spaaaaaaam...]

[2019-05-23 03:51:06 +0000] Status=2, isTerminal=NO, Elapsed=00:11.
    Waiting on Data Migration
        Reason:Running plugin com.apple.iTunesStore.migrator (iTunesStore.migrator)
        Migration Elapsed:00:10 seconds

[2019-05-23 03:51:08 +0000] Status=1, isTerminal=NO, Elapsed=00:12.
    Waiting on BackBoard

[2019-05-23 03:51:12 +0000] Status=4, isTerminal=NO, Elapsed=00:16.
    Waiting on System App

[2019-05-23 03:51:12 +0000] Status=4294967295, isTerminal=YES, Elapsed=00:17.
    Finished

推荐阅读