从xcode3切换到xcode4 - 无法将程序加载到较旧的iPod Touch上 [英] switching from xcode3 to xcode4 - can't load programs onto older iPod Touch

查看:86
本文介绍了从xcode3切换到xcode4 - 无法将程序加载到较旧的iPod Touch上的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


可能重复:

iPhone应用程序无法在旧设备上运行(3G,3GS,…)

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

I've got a similar problem to this (iPhone app does not run on old device (3G, 3GS, ...)) but the workaround on that page doesn't do anything for me. I have been developing iOS apps on XCode3 and testing on an older second generation iPod Touch running iOS 4.2.1. Been trying the last couple of days to use XCode4 instead.

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

I'm able to build and run apps under XCode4 using the simulator, both ones that I initially developed under XCode3, as well as brand new XCode4 created "Hello World" type ones. However, when I try to put one on the actual hardware, it fails with little in the way of error messages. The debug window in XCode4 doesn't show anything amiss. The activity/status indicator in the top middle of XCode goes from "Building [AppName]" straight to "Finished Running [AppName]" but the app never is transferred or run on the device.

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

If I look at the iPod's console via Organizer I see a bunch of errors like:


Thu Jun 16 15:17 :56未知锁定[16]<错误>:2ff68000 handle_connection:无法从Xcode接收USB消息#6。杀死连接

Thu Jun 16 15:17:56 unknown lockdownd[16] <Error>: 2ff68000 handle_connection: Could not receive USB message #6 from Xcode. Killing connection

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

Thu Jun 16 15:17:56 unknown com.apple.mobile.lockdown[16] <Notice>: Could not receive size of message

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

and I'm guessing it's related to that. I've tried unplugging all other USB devices from my Mac but makes no difference. Tried rebooting both the device and the Mac, but again no difference.

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

I have adjusted the iOS deployment target to 4.2, so I don't think there's any problem there. The device shows up in Organizer with the green dot and a valid unexpired provisioning profile. Under code signing properties it looks like:

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])

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

The device itself is showing up in the Schemes dropdown as:


[DeviceName](4.2.1覆盖基本SDK到5.0)

[DeviceName] (4.2.1 overriding Base SDK to 5.0)

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

Anyone else running into a similar problem or have any suggestions?

推荐答案

只是为了宣传Thomas对回答的评论,这可能是由于您的设备不支持的CPU架构。 iPhone和iPhone 3G(以及同代的iPod touch)不支持armv7。将Archiectures构建设置设置为包含armv6,以确保生成的fat二进制包含armv6代码。

Just to promote Thomas' comment to an answer, this can be caused by targeting a CPU architecture that your device doesn't support. The iPhone and iPhone 3G (along with iPod touches of the same generation) don't support armv7. Set the "Archiectures" build setting to include "armv6" to ensure the resulting fat binary contains armv6 code.

这篇关于从xcode3切换到xcode4 - 无法将程序加载到较旧的iPod Touch上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆