相关疑难解决方法(0)

使用Xcode 4.2和iOS 5 SDK时是否可以定位较旧的iOS版本?

我刚刚下载了带有iOS 5 SDK包的Xcode 4.2,我立即注意到我无法使用我的iPhone 3Gs和iOS 4.2.1进行调试.我只能在安装了iOS 5的iphone 4上进行调试和测试.

对于运行任何低于5.0 Xcode的iOS的任何设备,只是说"完成了iPhone3GS的运行"并且没有运行它.我的部署目标设置为3.0,因为我没有使用3.0以上的应用程序中的任何功能,我希望能够定位所有版本3.0或更高版本.我安装了所有配置文件并且是最新的.

我已经退出并重新启动了xcode,我已多次清理构建.我尝试在archtecture构建设置中添加armv6,但没有任何东西可以让我在ios 4.2.1的旧手机上构建和运行我的应用程序.

我的问题是,是否仍然可以使用适用于低于5的iOS版本的新SDK工作?如果我无法在旧手机上安装我的应用程序,我怎么能确定我的应用程序仍然可以在较低的iOS版本上运行?

编辑: 好的,看起来iOS SDK 5默认情况下放弃了对armv6的支持.您需要做的是在Target和您的Project的Build Settings下的Architectures字段中添加armv6.然后您的应用程序将能够在iPhone 3G设备上运行.答案可以在这里找到 如何使用iOS 5构建armv6和armv7架构

iphone xcode ios5

103
推荐指数
2
解决办法
5万
查看次数

从xcode3切换到xcode4 - 无法将程序加载到较旧的iPod Touch上

可能重复:
iPhone应用程序无法在旧设备上运行(3G,3GS,...)

我有一个类似的问题(iPhone应用程序不能在旧设备(3G,3GS,...)上运行)但该页面上的解决方法对我没有任何作用.我一直在XCode3上开发iOS应用程序,并在运行iOS 4.2.1的旧版第二代iPod Touch上进行测试.过去几天尝试使用XCode4.

我能够使用模拟器在XCode4下构建和运行应用程序,我最初是在XCode3下开发的,以及全新的XCode4创建的"Hello World"类型.但是,当我尝试将其中一个放在实际的硬件上时,它会失败而几乎不会出现错误消息.XCode4中的调试窗口没有显示任何错误.XCode顶部中间的活动/状态指示器从"建立[AppName]"直接变为"完成运行[AppName]",但应用程序永远不会在设备上传输或运行.

如果我通过Organizer查看iPod的控制台,我会看到一堆错误,例如:

Thu Jun 16 15:17:56 unknown lockdownd [16] <Error>:2ff68000 handle_connection:无法从Xcode接收USB消息#6.杀死连接

Thu Jun 16 15:17:56未知com.apple.mobile.lockdown [16] <Notice>:无法接收消息大小

我猜它与此有关.我已经尝试从我的Mac上拔掉所有其他USB设备,但没有任何区别.尝试重新启动设备和Mac,但再次没有区别.

我已将iOS部署目标调整为4.2,所以我认为那里没有任何问题.设备显示在管理器中,带有绿点和有效的未过期配置文件.在代码签名属性下,它看起来像:

Code Signing Entity     Don't Code Sign
    Debug               Don't Code Sign
        Any iOS SDK     iPhone Developer (currently matches...[profile I have installed])
    Release             Don't Code Sign
        Any iOS SDK     iPhone Developer (currently matches...[profile I have installed])
Run Code Online (Sandbox Code Playgroud)

设备本身在Schemes下拉列表中显示为:

[DeviceName](4.2.1覆盖Base SDK到5.0)

其他人遇到类似问题或有任何建议吗?

ios xcode4

11
推荐指数
3
解决办法
4181
查看次数

标签 统计

ios ×1

ios5 ×1

iphone ×1

xcode ×1

xcode4 ×1