美文网首页iOS10
Xcode8运行swift项目报错的问题

Xcode8运行swift项目报错的问题

作者: 苹果上的小豌豆 | 来源:发表于2016-09-22 17:47 被阅读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遇到的一些问题

    相关文章

      网友评论

      • 青天揽明月:升级Xcode8后Swift项目的问题还是很多的
      • iOSTbag:请问一下 转换版本之后 还是包方法错误 怎么解决啊

      本文标题:Xcode8运行swift项目报错的问题

      本文链接:https://www.haomeiwen.com/subject/elizettx.html