解决低版本Xcode不支持高版本iOS真机调试的问题

今天在作真机调试的时候,遇到下面的一个问题: 
这里写图片描述php

Could not locate device support files. 
This iPhone 6s is running iOS 11.1 (15B93), which may not be supported by this version of Xcode.
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

上面的意思是,在调试前我将我手机的iOS系统 升级到了最新版11.1版本,而个人Xcode9支持的最高版本是11.0的。这也不奇怪,手机确定都是先推送的,这是苹果一向的作法。那么遇到上面的问题咱们怎么解决呢?html

解决办法

一、复制一份旧的SDK,并从新命名为真机测试须要的SDK版本; 
具体作法是,找到路径: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk (提示:要在应用程序中找到Xcode,右键点击 -> 显示包内容,之前Xcode版本的iOS SDK有的保存在系统根目录下)。markdown

复制一份iPhoneOS.sdk,并命名为iPhoneOS11.1.sdk。以下图所示: 
这里写图片描述app

2,新增真机调试包及内容 
打开路径: 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 。我在CocoaChina上找到了11.1的真机包,连接地址以下: 
http://www.cocoachina.com/bbs/read.php?tid=1726904。而后咱们打开DeviceSupport并复制一份。 
这里写图片描述
具体作法是,建立一个新的真机须要的版本11.1(15B93),而后将从 cocoachina下载的文件拷贝到这个地方便可。测试

三、修改SDKSettings.plist文件中的版本号this

按照/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk 的顺序打开SDKSettings.plist 文件,将里面全部跟版本有关的数字都修改成11.1便可。再次运行就行了。 
这里写图片描述spa