我想在山狮(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 有什么问题?
关于如何解决这类问题有什么想法吗?
我想在山狮(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 有什么问题?
关于如何解决这类问题有什么想法吗?
我已经调查过了,这是 Apple 的故意行为。
这是 Xcode 下载位置缓存的(已编辑)提取:
~/Library/Caches/com.apple.dt.Xcode/Downloads/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 < 10.8.0”设置,该设置在其他模拟器软件包中不存在。
我试图编辑该文件,但只要 Xcode 打开它就会被另一个版本替换。而且我无法管理 4.3 Simulator DMG 的手动下载:ADG 网站抛出“会话过期”错误。
看起来 Apple 对 4.3 模拟器有问题,并决定禁用它。对于必须支持此版本的人来说,这很糟糕。
我向 Apple 提交了 DTS,并与他们确认 Mountain Lion 不支持 iOS4 模拟器。他们建议在真实设备上进行测试。
它看起来像狮子与山狮的问题。
我今天将几台机器更新到 Xcode 4.4。两个较旧的 Lion 系统提供在 xcode|preferences|downloads 下安装 iOS 4.3 和 5.0 模拟器。较新的 Mountain Lion 系统仅提供 iOS 5.0 模拟器。
我也遇到过这种烦人的情况。最近,我设法添加了一个编译时检查,用于检查 API 与旧版本的 SDK。不幸的是,您无法通过模拟器使用旧版本对其进行测试,但它仍然是一些东西。
所以这就是我所做的:
我首先必须获得我想要获得的旧版 Simulator SDK。我可以通过下载包含所需 SDK的旧 Xcode 3 (不是 4)版本轻松获得此功能。带有 iOS SDK 4.3 的 Xcode 3.2.6 链接在这里。
接下来我必须安装 SDK。这不是太难,所以我不会在这里解释太多。但是 SDK 存储在Packages
文件夹中。此文件夹在早期的 Xcode 3 版本中清晰可见,但在更高版本(如 Xcode 3.2.6)中隐藏。无论如何,您都可以通过终端轻松打开它。记得安装模拟器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 的编译时检查。
升级到 ML 后,我可以选择下载 iOS 4.3 Simulator。然而它没有用!我在调试时收到错误。当我尝试手动切换模拟器版本时,它卡住了。
如果我知道,我可能会等待解决方案,而不是升级。