Xcode7.0beta使用iOS8模拟器的方法

下载了Xcode7.0 beta版之后,自带的是iOS9.0的模拟器,并且Xcode-beta的preferences的downloads里面没有提供之前版本的模拟器下载(将来肯定会提供的),我在Xcode6.3里下载了几个模拟器,但是发现都用不了了,提示如下图

我又在Xcode6.3里试了一下,可以正常使用,搜了一下这句话(Unable to open liblaunch_sim.dylib. Try reinstalling Xcode or the simulator),谷歌没有找到有用的信息,只好自己来解决了。

先说明一下,我现在解决之后可以支持8.1和8.2,这两个是之前Xcode6.3提供了下载的,8.3因为是Xcode6.3自带,和前两个情况不同,所以模拟器列表里没有8.3,也就是说Xcode-beta没法用8.3的模拟器。另外我在7.1上试了同样的方法发现不成功,所以我写的方法对7.1没用。另外,这个问题只是暂时的,过一阵等Xcode再更新可能会解决这个问题。假如你找到了7.1和8.3的解决办法,欢迎把方法贴到评论里。

我先想到的是找这个文件liblaunch_sim.dylib的位置,Finder里面搜,搜了半天没出来,于是只好用terminal了。locate命令是linux常用的查找文件位置的指令,为了精确的找到文件,使用前最后先updatedb一下,不过mac下不能直接输入updatedb,它在mac下是一个脚本文件,需要输入完整的脚本文件地址,如下

/usr/libexec/locate.updatedb

可能会有权限问题,可以在它前面加上sudo。等待数据库更新完,就可以查找了,指令如下

locate liblaunch_sim

如图所示

可以看到找到了几个文件,第一个是Xcode7.0里苹果表模拟器目录下的,用不上。第二个是Xcode7.0里手机模拟器目录下的,且称之为文件a,第三个是Xcode6.3里手机模拟器目录下的,且称之为文件b,后面几个是单独下载的模拟器的目录,可以看到它们和编译器是分开的(而8.3模拟器是在编译器目录里的)。解决方法就是把后面8.1、8.2目录下的文件替换成文件a,就是Xcode-beta目录下的那个文件,替换前记得备份。

大功告成。

修改之后,Xcode6.3里还是可以用8.1和8.2的模拟器,可能这个文件是向下兼容的。


2015-09-17更新:

xcode7正式版已在App Store上架,已经提供了iOS8.x版本的模拟器,这篇文章可当做类似问题的参考。

文 / altair21
4 COMMENTS
  1. 2015/08/12
    落叶

    博主博客貌似很冷清,互相交个朋友吧,博客:blog.subin.com.cn

  2. 2015/08/13
    white

    为啥xcode7的模拟器,加载网页视图后什么也不显示?

  3. 2016/01/10

    本人有点口臭,前天晚上在家老姐眼睛进沙了,叫我吹下,然后我一吹就停电了,老姐惊叫大喊“我眼睛瞎了,被你口气臭瞎了”。求我当时心里阴影面积

LEAVE A REPLY

loading