2011-04-20 48 views
2

使用iOS 4.3 SDK编译是否取消了对iPhone 3G和第二代iPod touch设备的支持?iOS 4.3分发二进制文件不再支持iPhone 3G/2nd Gen iPod Touch?

升级后,我发现ad-hoc和distribution版本不再在这些设备上运行,而是将iOS 4.2 SDK安装到另一个目录,并且不对代码或生成设置进行任何更改,但它确实工作正常。

的应用产生如下所示的碰撞报告:

OS Version:  iPhone OS 3.0 (7A341) 
Report Version: 104 

Exception Type: EXC_BAD_ACCESS (SIGBUS) 
Exception Codes: KERN_PROTECTION_FAILURE at 0x00000000 
Crashed Thread: 0 

Thread 0 Crashed: 
0 libobjc.A.dylib     0x3014579c 0x3000c000 + 1283996 

Thread 1: 
0 libSystem.B.dylib    0x31d47158 mach_msg_trap + 20 
1 libSystem.B.dylib    0x31d49ed8 mach_msg + 60 
2 CoreFoundation     0x3025454e CFRunLoopRunSpecific + 982 
3 CoreFoundation     0x30254164 CFRunLoopRunInMode + 44 
4 WebCore       0x3588dbc8 RunWebThread(void*) + 412 
5 libSystem.B.dylib    0x31d705a0 _pthread_body + 20 

Thread 0 crashed with ARM Thread State: 
    r0: 0x00000000 r1: 0x00000000  r2: 0x39d4a928  r3: 0x00000113 
    r4: 0x00114940 r5: 0x3893b29c  r6: 0x38204d80  r7: 0x0031acf0 
    r8: 0x00000000 r9: 0x00000001  r10: 0x00000000  r11: 0x00000000 
    ip: 0x39d802b8 sp: 0x2fffee10  lr: 0x3000852c  pc: 0x3014579c 
    cpsr: 0x80000010 

如可以看到的,没有在栈跟踪实际应用单个参考,并且只有在运行两个线程。

是否记录了对于那些较旧的设备进行编译的地方?有什么方法可以添加某种构建设置,以便它可以继续在向前移动的设备上运行?

+0

在询问明显的风险:是“iOS的部署目标”设置是否设置正确? – magma 2011-04-20 15:46:50

+0

另请参阅:http://stackoverflow.com/questions/4923303/ios-4-3-sdk-debugging-on-a-3g-device – magma 2011-04-20 15:50:31

+0

@magma:是的,iOS部署目标设置为“iOS 3.0” 。我在链接中查看帖子,但看起来并不完全相同。在这些设备上以调试模式运行应用程序的工作非常好,正如我所提到的那样,总线就是ad-hoc/distribution构建的问题。 – 2011-04-20 17:25:28

回答

1

iOS 4.3不支持比iPhone 3GS和iPod Touch第3代(不包括8GB型号,也不支持)的设备。

来源:Apple.com(滚动到下)

+0

这是用于将软件加载到手机上的操作系统版本,但我询问了有iOS设置目标设置为iOS 3.0的SDK – 2011-04-20 17:23:35