支持iOS 5与iOS 7和iPhone 6

时间:2015-01-22 19:22:49

标签: ios xcode ios7 ios8 iphone-6

我没有让我的应用程序在iOS6的iPhone6和iOS7的iPhone5上工作。也许是因为我删除了对iOS7的支持,但我认为这不是一个很好的理由。

我正在处理遗留代码,而我是一名Android开发人员,所以我不完全了解iOS。 但我的情况是,我试图支持iPhone6并且这样做我在“启动屏幕文件”上添加了一个新的XIB'关于项目配置。在此之前,我的代码在iPhone4,5和6上运行良好。但之后所有屏幕停止自动调整大小以实现iPhone6屏幕,而在iPhone5运行iOS7时,应用程序在屏幕的顶部和底部显示黑条。但是对于iOS 8,它运行正常。

iPhone 5 with iOS 7 showing black bars on top and bottom iPhone 5 with iOS 8 runs OK iPhone 6 runs OK

我修复了iPhone6的调整大小问题,在xib上添加了正确的约束。但是我无法解决这个iPhone5的问题。

尽管有这个错误,我面临的另一个奇怪的行为是我无法将应用程序发送到Apple Store,因为它说它目前不支持iPhone5。 xCode错误是:

Organizer error when deploying app

此错误看起来过时了,因为第二个链接无效。

我发现,关于如何支持iPhone5的唯一类似的错误是从iPhone6之前的2012年或2013年开始,他们基本上告诉为iPhone5尺寸添加新的启动图像,因为我的应用程序已经在iPhone5上运行所以我认为它不是问题。

Launch images, I just did't added for Retine HD 4.7 and 5.5 because they should use the xib

那么,我做错了什么?或者我应该更改什么配置来修复它?

提前致谢!

1 个答案:

答案 0 :(得分:1)

所以,经过@Tommy的一些帮助,指出了我设法解决问题的方法。

首先,我认为我的问题是因为我删除了所有' Default.png'配置“启动图像源”时,项目根文件夹中的图像使用Images.xcassets。在添加“启动屏幕文件”之前这很有效。但是在我添加了“启动屏幕文件”之后我的项目停止了工作。

因此,为了解决这个问题,我必须将Default-568h@2x.png图像读入项目的根文件夹并设置“启动图像源”。不要使用资产目录'。这样,据我所知,Default-568h @ 2x告诉xCode该项目针对iPhone5运行iOS7进行了优化,而所有其他设备或运行iOS8的iPhone5都使用了“启动屏幕文件”。