xcrun simctl status_bar 不适用于 Xcode 14.1

问题描述 投票:0回答:3

在 macOS 13.0.1 上升级到 Xcode 14.1 后,更改模拟器状态栏的命令不再起作用。终端似乎获得了启动的设备,因为命令

xcrun simctl shutdown "booted"
确实有效。

如果我尝试

xcrun simctl status_bar "booted" override --time 9:41 
,但什么也不会发生。我尝试了多个模拟器,但没有一个显示状态栏的变化。

这是一个已知的错误还是我遗漏了什么?

xcode terminal statusbar simulator
3个回答
8
投票

这是 Xcode 中的一个错误。我在here写了更多关于实际问题的内容,但作为一种解决方法,您可以像这样启动模拟器,它应该可以恢复工作:

SIMCTL_CHILD_SIMULATOR_RUNTIME_VERSION=16.0 xcrun simctl boot


1
投票

使用 iOS 16.0 模拟器而不是 16.1 或更高版本。这可以在 Xcode -> 设置 -> 平台中添加


1
投票

这应该是自 Xcode 14.1 以来引入的已知错误(Xcode 14.2 也不起作用)。 Apple 开发者论坛上也有一个讨论主题。请参阅“无法在 Xcode Simulator 中更改时间”

该线程的OP说“模拟器状态魔法”有效,但我尝试过但没有任何运气。也许你可以先尝试一下。我尝试了一下,效果符合预期。

但是为了在 Xcode 14.1 中使用 Simulator Status Magic,我们需要运行存储库中提供的脚本(提醒一下,必须先运行模拟器):

$ cd path/to/SimulatorStatusMagic
$ ./build_and_inject.sh booted

如果它也不适用于您,我认为剩下的唯一方法是从软件下载页面下载Xcode 14.0。

从 Xcode 14.1/2 下载 Simulator 16.0 也可能有效,但我没有尝试,因为这个过程在我这边花费了很长时间。而且缺点是以后每当升级到新的Xcode版本时,都需要重新下载Simulator 16.0。谁知道这个bug什么时候能修复。

就个人而言,我会保留 Xcode 14.0 一段时间,直到 Apple 开发团队修复此错误。顺便说一句,请记住将下载的 Xcode 重命名为“Xcode 14”,然后再将其拖到您的应用程序文件夹中。

© www.soinside.com 2019 - 2024. All rights reserved.