我想要检查我的iPhone模拟器应用程序的设备标识符,但不使用代码库。我知道如何使用代码库和UIDevice实例来完成此操作。
是否有一种不使用代码库的方法来查找设备标识符?
我想要检查我的iPhone模拟器应用程序的设备标识符,但不使用代码库。我知道如何使用代码库和UIDevice实例来完成此操作。
是否有一种不使用代码库的方法来查找设备标识符?
编辑:查看基于CoreSimulator的模拟器的UDID的更新方法,请参见其他答案。
instruments -s devices
xcrun simctl list
标识符
值即为UDID。来自2011年:
这篇回答应该是你想要的。在你的Mac上查看系统概要文件,就可以找到ID。我刚在我的电脑上测试,ID匹配。
这是您可以输入的确切终端命令以查看它:
system_profiler SPHardwareDataType
通常情况下,有一个Xcode终端工具可以做到这一点(是Xcode工具的一部分) 请参阅xcrun手册
xcrun simctl list | egrep '(Booted)'
列出所有已启动的模拟器(可能有多个)
(删除 | egrep '(Booted)'
可以查看全部模拟器)。
UIID 的结果类似于:
iPhone 6 Plus (AAAABD40-9DE6-44B7-A4EA-B34ABCDEFCA6) (Booted)
您可以在Mac上查找〜/ Library / Developer / CoreSimulator / Devices
中的文件夹,并查找特定模拟器的所有“物品”
试试这个
instruments -s devices
xcrun simctl list
的简化版本。如果您需要更多信息,例如有关每个模拟器实例的“启动”状态(打开窗口),我建议使用 xcrun simctrl。我编写了一个不错的 AppleScript,只需将它们重置为出厂状态(包括 Keychain)。 - TiBooXinstruments -s devices
命令,它会提示 instruments
已被弃用,建议使用 'xcrun xctrace' --> xcrun xctrace list devices
命令。 - Bruno Bieri您可以仅搜索已启动的设备并获取iOS版本(不同于@TiBooX的答案,后者仅显示活动设备)。 您也不需要使用 grep
,只需使用内置功能 xcrun
:
$ xcrun simctl list 'devices' 'booted'
将打印出类似于以下的内容:
== Devices ==
-- iOS 10.3 --
-- iOS 11.4 --
-- iOS 12.4 --
-- iOS 13.4 --
iPhone 11 Pro (A5DEEA78-1E82-472E-B7CC-FFD27741CDA2) (Booted)
-- tvOS 13.4 --
-- watchOS 6.2 --
我建议将以下别名添加到您的.bashrc
或.zshrc
文件中:
# Get the active simulator with
alias active-sims="xcrun simctl list 'devices' 'booted'"
这样你就可以每次运行 active-sims
,而无需记住整条命令。
Xcode -> 窗口 -> 设备和模拟器 -> 选择您想要标识符的设备(在详细信息中可以看到标识符)
"instruments"已被弃用,请使用以下命令:
xctrace list devices
有另一种方法可以不使用命令行,在此plist文件~/Library/Developer/CoreSimulator/Devices/device_set.plist中,它列出了所有带UUID的设备。
您可以通过导航到主页/设置/通用/关于/序列号来在模拟器中直观地查看值,该值与您的桌面机器相同。您可以通过导航到Apple/关于本机并在OS X下点击OS版本号来验证此操作(显示将更改以指示您的UDID - 您可能需要单击两次)。
~/Library/Developer/CoreSimulator/Devices/[ID]
中设备路径的 ID。这个答案对我有用:https://dev59.com/qGw05IYBdhLWcg3w6F8w#42649929。 - Liron Yahdav