Xcode 4.2是否支持编译iOS 3.1.3的项目?我试着编译一个我目前正在编写的项目,每次我尝试在iOS 3.1.3的iPhone 3G上运行应用程序时,我都不停地崩溃。我知道我运行的操作系统已经过时,但客户端要求应用程序应该在iOS 3.1.3上运行。任何想法我将如何解决这个问题?使用Xcode 4.2编译iOS 3.1.3
2
A
回答
1
在生成设置改变下列设置:
- 基地SDK - >最新的的iOS(的iOS 5.0)
- iOS的部署目标 - >的iOS 3.1
- 架构 - >选择其他...和手动加上 “ARMv6的”
- 有效的架构 - >删除 “的ARMv7” 见好就收 “的ARMv6”
在* AppDelegate.m
- (bool)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]] autorelease];
// Override point for customization after application launch.
self.viewController = [[[MyHudDemoViewController alloc] initWithNibName:@"MyHudDemoViewController" bundle:nil] autorelease];
// NOTE THIS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// iOS 3.1 don't support the following statement.
//self.window.rootViewController = self.viewController;
[self.window addSubview:self.viewController.view];
[self.window makeKeyAndVisible];
return YES;
}
呃....对不起......忘了......
- 检查项目的Info.plist,它是否具有“所需的设备能力”项目,则该项目从改变“armv7”到“armv6”。
0
这里有东西一大堆,我不得不做,使适用于iOS 3.1的XCode 4编译和调试在3G版iPhone:
降级到4.3.3的XCode。
Xcode 4.5.2会拒绝连接iPhone 3G进行调试。 4.3.3版本与4.5.2并驾齐驱,他们甚至可以共享相同的项目文件,但在架构设置中留下armv7s将在4.3.3中产生无害的警告。见下文。
更改项目设置
Architecture -> go to "others", remove the line, put armv6 armv7
(你也可以在该行添加armv7s上面4.5.2编译在同一个项目,但它会产生4.3.3下警告)
Valid architecture -> armv6 armv7 armv7s Deployment target -> change to 3.1
在plist文件的“必需的设备能力”中,移除armv7。
更改目标设置(单击左窗格中的目标)
deployment target to 3.1
编辑您的计划,以更改调试
In the Run section, debug, change debugger to GDB (instead of LLDB)
In the Test section, debug, change debugger to GDB (instead of LLDB)
变化自动生成这会导致iOS 3崩溃。1应用
在你的AppDelegate “didFinishLaunchingWithOptions”,而不是此行
self.window.rootViewController = self.viewController;
将这个代码
if ([self.window respondsToSelector:@selector(setRootViewController:)]) self.window.rootViewController = self.viewController; else [self.window addSubview:self.viewController.view];
然后你应该能够运行和调试在3G版iPhone 。
相关问题
- 1. 针对iOS 3.1.3编译的Xcode 4.2设备
- 2. 用XCode 3.2.3编译iphone 3.1.3?
- 3. 安装iOS 4.2的Monotouch 3.1.3?
- 4. 编译Xcode 4.2的错误
- 5. 是否在Xcode 4.2中使用兼容LLVM的GCC 4.2编译iOS静态库?
- 6. 使用iOS SDK 4.2编译libpq
- 7. XCode - XCode 4.2 beta ARC无法编译
- 8. Xcode 4.2 Beta和iOS 4.2
- 9. 与xcode 4.2编译时程序崩溃
- 10. 的XCode 4.2编译器错误
- 11. iOS coreplot在Xcode 4.2
- 12. xcode 4.2 iOS桌面使用故事板
- 13. 如何使用iOS SDK 4.2与Xcode 4.0.2
- 14. 使用StoryBoard呈现ViewController的iOS Xcode 4.2
- 15. iPhone 4.0 Beta编译为3.1.3
- 16. 编译Freetype 2.6.5 iOS的Xcode
- 17. 为iOS 4.2到iOS 6构建/编译应用程序?
- 18. 在Xcode 4.2中使用GCC 4.2 iOS SDK 5.0
- 19. 使用的XCode 4.2
- 20. 如何使用xcode 3.1.3使用iAds
- 21. GCC 4.2编译错误
- 22. 删除storyboard xcode 4.2 iOS 5?
- 23. Xcode 4.2上的ios SDK 4.3?
- 24. iOS模拟器(Xcode 4.2)
- 25. iOS SplitView/Universal需要xcode 4.2
- 26. iphone ios xcode 4.2 - EXC_BAD_ACCESS信号
- 27. iOS 5,Xcode 4.2和ProtoBuf
- 28. IOS 5中的ABRecordSetVal Xcode 4.2
- 29. Xcode 4.2和iOS SDK 4.0
- 30. 在iOS 3.1.3中使用最新的Xcode测试
谢谢...无论如何,我得到这个错误。 警告:所有应用程序都应该包含armv7架构(当前ARCHS =“armv6”)。 iPhone/iPod Touch:应用程序可执行文件缺少所需的体系结构。至少必须存在以下体系结构之一:armv7(-19033) –
对不起,如果要为iOS 3.1.3创建新项目,我无法帮助您解决此警告(或错误?) Xcode 4.2,你可以像我说的那样做。 – Snowfox
嗨,我有一个应用程序在Iphone 3GS或4上正常工作。 现在,我正在尝试在iPhone 3G上工作,但是我不能。 我有一些问题,我想检查一下我是否配置好了Iphone 3的项目,以确保我的问题与此配置无关。 我检查了我的AppDelegate.m,并没有显示给你的代码。强制添加该代码或只有在需要时才需要更改? 感谢和抱歉我的英文不好 –