iOS10

Xcode8运行swift项目报错的问题

2016-09-22  本文已影响1318人  苹果上的小豌豆

随着iOS 10的陆续使用,升级到xcode8也是大势所趋.

虽然现在xcode 8 可能还有一些问题,但是整体还是不错的,对一些常用的插件也做了集成,比如说 ///注释快捷键

下面说一下我遇到的一些问题:

问题一:swift的更新

因为swift3有了较大更新,所以如果原项目中有涉及到swift的话需要转换一下,比如说我的项目中有一个socket.io 第三方类库,升级到xcode8后因为swift的原因总是报错.

解决方法:首先需要看一下该swift库是否已经有了swift3的版本,有的话则更新到最新版,即将旧文件进行替换,替换成最新的swift文件.当替换完成编译的时候会报一个错误:"Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be config********":

这个时候需要转换一下swift版本,根据上面的路径可以进行转换,操作如下:

首先将swift language verson属性值设为NO

然后根据上面报错的那个路径,即(edit->convert->to current....)进行转化,这里没有截图

转换的时候可以选择2.3或者3.0  可以根据实际情况选择

上述步骤完成后,swift的转换基本就已经完成了,再次编译运行应该就ok了.

但是可能有部分方法名会有变动,所以要注意及时更改新方法.

问题二:Unable to read from device  不能连接到模拟器

或者

解决方法:在stackover上有一个比较好的解决方法,虽然我也不知道为什么这样做就可以,但是可以试一下:

1.在xcode中打开项目

2.运行时选择你的设备

3.在这个路径下删除这个文件(我是删除的10.0.1这个文件  没有全删)

4.拔掉你设备的连接线

5.重启你的设备

6.插上你的设备

7.重新运行

问题三:不能在真机上运行  报错:dyld_shared_cache_extract_dylibs failed

解决方法: 我个人认为这可能是因为xcode8的兼容性有点小问题,不能识别部分设备.解决方法就是找一个你设备的包导入到

/Library/Developer/Xcode/iOS\ DeviceSupport目录下

上图红框及时我设备的系统版本号 (提取码:496b)

以上是我在升级到xcode8遇到的一些问题

上一篇下一篇

猜你喜欢

热点阅读