在Mountain Lion上安装Simulator SDK 4.3到Xcode 4.4

时间:2012-07-25 14:14:18

标签: ios xcode ios-simulator osx-mountain-lion

我想在山狮(os x 10.8)上的xcode 4.4中安装SDK 4.3,但是当我从xcode 4.1安装4.3 sdk软件包并从xcode 4.4启动模拟器时,模拟器只是告诉我ios模拟器可以找不到sdk。

可能需要重新安装sdk,这意味着它无法运行! xcode 4.4 GM出了什么问题?

对于如何解决这类问题有什么想法吗?

5 个答案:

答案 0 :(得分:21)

我已经调查过了,这是Apple的故意行为。

以下是Xcode下载位置缓存的(已编辑)摘录:

<强>〜/库/缓存/ com.apple.dt.Xcode /下载/ eded78df8bfabaf6560841d10cf8e53766f74f28.dvtdownloadableindex

<dict>
    <key>source</key>
    <string>http://adcdownload.apple.com/ios/ios_simulator__resigned/ios_43_simulator.dmg</string>
    <key>identifier</key>
    <string>Xcode.SDK.iPhoneSimulator.4.3</string>
    <key>name</key>
    <string>iOS 4.3 Simulator</string>
    <key>userInfo</key>
    <dict>
        <key>InstalledIfAllPathsArePresent</key>
        <array>
            <string>$(DEVELOPER)/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk</string>
        </array>
        <key>ActivationPredicate</key>
        <string>$MAC_OS_X_VERSION < "10.8.0"</string>
    </dict>
</dict>

请注意显式的“ActivationPredicate:$ MAC_OS_X_VERSION&lt; 10.8.0”设置,这在其他模拟器程序包中不存在。

我尝试编辑该文件,但只要Xcode打开就会被其他版本替换。我无法管理4.3模拟器DMG的手动下载:ADG网站引发“会话过期”错误。

看起来Apple有4.3模拟器的问题,并决定禁用它。这对那些必须支持这个版本的人来说很糟糕。

答案 1 :(得分:16)

我向Apple提交了DTS,并向他们确认Mountain Lion不支持iOS4模拟器。他们建议在真实设备上进行测试。

答案 2 :(得分:10)

看起来像是狮子与山狮的问题 我今天更新了几台机器到Xcode 4.4。两个较旧的Lion系统提供在xcode | preferences | downloads下安装iOS 4.3和5.0模拟器。较新的Mountain Lion系统仅提供iOS 5.0模拟器。

答案 3 :(得分:9)

我也有这种烦人的情况。最近,我设法添加了一个编译时检查,用于检查旧版SDK的API。不幸的是,您无法通过模拟器使用旧版本对其进行测试,但它仍然存在。

所以这就是我所做的:

我首先得到了我想要的旧版Simulator SDK。我可以通过下载包含所需SDK的旧Xcode 3 (非4)版本轻松获得此功能。带有iOS SDK 4.3的Xcode 3.2.6与here链接。

我接下来必须安装SDK。这不是太难,所以我在这里不会解释太多。但SDK存储在Packages文件夹中。此文件夹在早期的Xcode 3版本中清晰可见,但在更高版本中隐藏(如Xcode 3.2.6)。您也可以通过终端轻松打开它。请记住安装模拟器 SDK,而不是常规SDK。此外,在Xcode 4.3中更改Developer文件夹移动到Xcode.app之后,我必须将SDK安装到tmp文件夹中并自己将SDK移动到Xcode.app中。如果我打开它,我需要重启Xcode。

之后,我复制了项目中的debug配置,并将其命名为iOS 4.3 API Check或类似的东西 - 并不重要。然后我将这个新配置的Base SDK更改为我安装的旧SDK。我安装的SDK没有列出,所以我必须选择other并输入iphonesimulator4.3

最后,当我需要检查SDK的旧版本时,我将项目方案中Run <appname>.app的配置更改为iOS 4.3 API Check配置。我们去了,针对iOS 4.3的编译时检查。

答案 4 :(得分:1)

升级到ML后,我可以选择下载iOS 4.3 Simulator。 但它不起作用!我在调试时收到错误。当我试图手动切换模拟器版本时,它就卡住了。

如果我知道,我可能会等待解决方案,而不是升级。