模拟器名称在Xcode 6.2中以id而不是os名称显示

Sta*_*tas 28 iphone objective-c ios-simulator xcode6

我在安装Xcode 6.2之后安装了额外的ios模拟器(7.1),现在模拟器名称如下所示:

在此输入图像描述

如何更改名称?

Dan*_*elG 72

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

您拥有所有设备类型中的4种,因此我怀疑其中一些是针对相同的iOS版本.您应该删除一些重复项.查看

xcrun simctl list
Run Code Online (Sandbox Code Playgroud)

xcrun simctl delete
Run Code Online (Sandbox Code Playgroud)

或者转到Windows> Xcode中的设备以删除或重命名您的设备.

  • 是的,谢谢,我想出来了.由于未知原因,所有ios版本都有重复项.我刚删除它们,一切都变好了. (4认同)

Jer*_*oia 6

如何解决它

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
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况:

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

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

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