运行iOS 8.3的iPhone在Xcode 6.2中显示为不合格

时间:2015-04-10 08:39:33

标签: ios iphone xcode

当前设置:

  • iPhone 6+已更新至iOS 8.2
  • iMac使用Xcode 6.2运行Mavericks(10.9)
  • 部署目标设置为8.2

当我连接iPhone时,它显示为不合格。

此外,它显示此警告:

enter image description here

我试过了:

  • 重启iPhone和iPhone iMac - >未解决
  • 从以下位置手动选择iPhone:Product > Destination > Ineligible Devices

this question中的许多其他答案,但都是针对使用Xcode 6.3而不是6.2的问题。

我知道我可以解决这个问题:

  • 升级到Yosemite&安装Xcode 6.3
  • 使用运行8.2的iPhone

但是有没有可能安装Xcode 6.3 DMG并复制一些libs / symlinking它会起作用?

5 个答案:

答案 0 :(得分:11)

只需将文件夹DeviceSupport/8.3从Xcode 6.3复制到Xcode 6.2。

详细说明:

  • 下载Xcode 6.2和6.3,安装为/Applications/Xcode_6.2.app/Applications/Xcode_6.3.app(或类似名称)
  • 在这两个安装中,都有一个文件夹Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
  • 在Xcode 6.2中,此文件夹包含适用于iOS 8.2和许多较低版本的软件包,但不适用于8.3。
  • 在Xcode 6.3中,此文件夹还包含iOS 8.3的程序包。就我而言,该文件夹名为8.3 (12F69)
  • 将iOS 8.3软件包从Xcode 6.3复制到Xcode 6.2(当然这个命令只有一行):

cp -r '/Applications/Xcode_6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/8.3 (12F69)' '/Applications/Xcode_6.2.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport'

  • 甚至更好,创建一个链接:

ln -s '/Applications/Xcode_6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/8.3 (12F69)' '/Applications/Xcode_6.2.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport'

  • 现在重新启动Xcode 6.2并通过USB连接您的设备。 Xcode应该允许您在其上测试应用程序。
Diego Freniche的解决方案(复制整个iPhoneOS.platform文件夹)是一个很好的帮助,但是当我从Xcode 6.2运行我的应用程序时,它看起来与我在部署ipa文件时略有不同手机(按钮位置错误,状态栏显示错误)。我猜Xcode很困惑,并构建了应用程序,好像它是针对不同的iOS版本。

使用此解决方案(仅复制DeviceSupport中的一个文件夹),看起来该应用程序的工作方式完全符合预期。如果遇到问题,我会通知您,但到目前为止我还没有看到任何问题。

答案 1 :(得分:10)

稍微进步,但这是 WIP

在Yosemite中看起来Xcode 6.2可以正常使用8.3设备。需要在小牛队进行测试

在Yosemite中使用Xcode 6.2进行测试(需要在小牛队进行测试,任何反馈都将受到赞赏)

  • 转到Xcode 6.2文件夹并重命名
  

/Applications/Xcode-6.2 copia.app/Contents/Developer/Platforms/iPhoneOS.platform

进入

  

/Applications/Xcode-6.2 copia.app/Contents/Developer/Platforms/iPhoneOS.platform.old

  • 安装Xcode 6.3 DMG,安装
  • 从Xcode 6.3复制此文件夹:
  

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform

在Xcode 6.2文件夹中。

  • 您可能会发现错误,告诉您root用户不拥有模拟器/ OS平台文件夹。要解决那个刚打开的终端,那么:

    $ cd /Applications/Xcode6.2.app/Contents/Developer/Platforms

    $ sudo chown -R root iPhoneSimulator.platform/

    $ sudo chown -R root iPhoneOS.platform/

  • 现在您可以从Xcode 6.2 在iOS 8.3设备中运行您的应用程序,但目标目标菜单中没有模拟器

更新ibtool尝试编译故事板时,我收到了奇怪的错误:

  

/Users/dfreniche/Desktop/Test/Test/Base.lproj/Main.storyboard:操作无法完成。 (com.apple.InterfaceBuilder错误2001年。)

所以最终放弃并更新到Yosemite 。如果有任何关于此的新信息,请分享。

答案 2 :(得分:0)

在Mavericks上将iOS8.3设备连接到Xcode 6.2会遇到同样的问题。在Yosemite上运行Xcode 6.4的工作机器上运行正常。 Mavericks机器上的软件更新不提供任何更高版本。看看Xcode 6.4的规格(可能是原始问题的6.3)说它需要OS X 10.10(即优胜美地)。所以,无论你是否能够破解它,你/我们在小牛队看到的行为都是苹果的意图。

答案 3 :(得分:0)

我有同样的问题,我不想只使用最新版本的XCode来维护我的旧项目。我最终安装了两个版本XCode(6.2和6.3)来解决这个问题。这就是我所做的。

  1. 从Apple网站下载XCode6.2安装包
  2. 将现有的XCode6.2升级到x6.3
  3. 在XCode6.3上打开我的项目(这次XCode可以识别设备,我认为XCode6.3可能已对您的项目进行了一些更新。)
  4. 关闭我的项目,重新安装XCode6.2,会有一个提示说我有一个更新版本,如果我想保留两者。单击是。然后我有两个版本的XCode。
  5. 完成所有这些步骤后,我终于可以打开我的项目并在XCode6.2中使用我的设备。希望它可以帮助某人。

答案 4 :(得分:-3)

XCODE 6.3出局..它解决了我的问题..如果你有优胜美地,你可以下载6.4测试版