ios模拟器在xcode 6中显示为UDID

时间:2014-10-06 07:26:55

标签: iphone ios8 ios-simulator xcode6gm

当我从xcode 6中选择模拟器时,我得到了多个选项来选择模拟器,但模拟器附带了UDID。请看下面的图片,请帮帮我。提前谢谢。

enter image description here

6 个答案:

答案 0 :(得分:39)

killall Xcode
  - 杀死所有正在运行的Xcode进程。
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService
- 杀死所有正在运行的CoreSimulatorService进程。
rm -rf ~/Library/Developer/CoreSimulator/Devices
- 从所有模拟器中删除所有模拟器数据。
open /Applications/Xcode.app - 打开Xcode。

xcode 10的上述步骤无效,请使用以下步骤:

xcrun simctl shutdown all
关闭所有设备

xcrun simctl list devices|grep -v "unavailable"|grep -Eo "[0-9A-F\-]{36}"
列出所有可用的设备

xcrun simctl list devices|grep -v "unavailable"|grep -Eo "[0-9A-F\-]{36}"|xargs xcrun simctl delete 删除所有设备(注意:这是一行)

更多细节xcrun simctl help

答案 1 :(得分:21)

在Xcode中,转到Window - >设备(快捷方式是Cmd +!)

在左侧窗格中,删除所有多余的模拟器设备(在左侧窗格中选择并按键盘上的删除)

通常这些都没有操作系统(显示iOS:不适用)。

当您尝试直接在SDK文件夹中复制较旧的模拟器版本而不是从Xcode安装它们时,通常会发生这种情况 - >偏好。

答案 2 :(得分:15)

如何修复

Xcode使用设备版本来消除具有相同名称的设备的歧义。 如果两个设备具有相同的名称和版本号,则它将使用设备的UDID。

你有一堆设备中的每一个(例如iPhone 5s)。我怀疑其中一些是针对相同的iOS版本。您应该删除一些重复项。查看xcrun simctl listxcrun simctl delete或使用Xcode.app中的设备管理器(点击“ - ”删除设备)。

如何恢复默认状态

# Ensure all possible clients of CoreSimulatorService are no longer running:

killall Xcode 2> /dev/null
killall Instruments 2> /dev/null
killall 'iOS Simulator' 2> /dev/null
killall Simulator 2> /dev/null
killall 'Simulator (Watch)' 2> /dev/null
killall ibtoold 2> /dev/null
killall simctl 2> /dev/null
# There may be others

# Kill the service itself
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService

# Remove all the data and logs
rm -rf ~/Library/*/CoreSimulator

为什么会发生这种情况:

CoreSimulatorService将在/ Library / Developer / CoreSimulator / Profiles中监视新模拟器运行时的添加(例如,从Xcode下载时 - >首选项 - >下载)。安装新运行时时,CoreSimulatorService将为该运行时创建一组初始设备。

如果同时运行多个CoreSimulatorService实例,则会出现此问题。每个CoreSimulatorService实例都将创建自己的一组设备(但其客户端最初只会看到该实例的设置)。在后续启动时(例如:重启后),将看到两个副本。由于在与使用发布的Xcode.app相同的登录会话中测试Xcode.app的beta版本或者在更新之前和之后使用Xcode.app,可以进入同时运行多个CoreSimulatorService副本的状态通过App Store。

如果您了解此错误可能产生的任何其他方式,请在http://bugreport.apple.com

提交新雷达

答案 3 :(得分:0)

正如@ ameer-sheikh所提到的,请转到Window>设备 您可能有多个具有相同iOS版本的设备。我有同样的问题,在选择每个重复设备并按下删除后,我能够将订单恢复到我的设备下拉列表

答案 4 :(得分:0)

转到窗口 - >设备(快捷方式为Cmd + Shift + 2) 在左侧窗格中,删除所有多余的模拟器设备(在左侧窗格中选择并按键盘上的删除) 通常这些是没有操作系统的(显示iOS:不适用)。 当您尝试直接在SDK文件夹中复制较旧的模拟器版本而不是从Xcode安装它们时,通常会发生这种情况 - >偏好。

答案 5 :(得分:-1)

另一个答案中的bash命令可能更简单,但您可以尝试这个以获得更简单,更复杂的解决方案:

gem install snapshot; snapshot reset_simulators

https://github.com/KrauseFx/snapshot

通过@saniul