我可以使用iOS7 SDK构建的应用程序看起来像iOS 7中的iOS 6应用程序吗?

问题描述:

我有一个在iOS 6上看起来很好的应用程序,我试图在iOS7上运行它。我可以使用iOS7 SDK构建的应用程序看起来像iOS 7中的iOS 6应用程序吗?

这是我做了什么:

  • 在项目和目标选项卡上,部署目标设定为5.1和5.1.1分别为
  • 在我所有的视图控制器的文件检查器选项卡,设置在打开“(默认值5.0)”,并查看“的iOS 6.1及更早版本”

我曾与iOS 7测试了iPhone 5,4和4S,它工作得很好。但现在我发布了我的应用程序,它具有iOS 7的外观和感觉(以及由此更改导致的大量视觉错误)。

有些事情,我注意到:

如果我只是建立我的Xcode的应用程序,然后再插上设备,并在其上运行,它会在iOS7的外观和感觉。但如果我只是建立&直接在设备上运行它,它完美的工作(iOS 6的外观和感觉)。

+1

没有真正相关,但为什么?你为什么想要做这样的事? –

+2

@OscarApeland很明显,很多开发人员(和客户)不愿意花时间和资源来更新iOS 7的应用程序。我确信这就是Hodes希望这样做的原因。当然,现在已经过了2月1日,当你提交一个应用程序时,不再有可能摆脱旧的外观。 – Gavin

+0

@OscarApeland因为客户想要。 :( – Hodes

OK,我以前的答案是错/不合时宜。

苹果公司发布公告指出,截至2014年2月1日对iOS7运行的所有应用程序必须适用于iOS 7

优化这意味着,无论是否有可能使它看起来像iOS6的是无关紧要的。如果它运行在iOS7上,它必须更新为iOS7。

https://developer.apple.com/news/index.php?id=12172013a#top

+0

得到了苹果的同样的答案。我们与我们的客户交谈,他同意重新设计应用程序。 谢谢大家! – Hodes

没有,sdk7应用程序将总是看起来像ios7应用上ios7

+0

它取决于目标版本 – user2277872

+0

这甚至意味着什么 –

+0

我的回答是完全正确的!使用sdk7构建的应用程序将是ios7样 –

你可以做到以下几点,也许在你的应用程序委托的-load方法:

[[NSUserDefaults standardUserDefaults] setObject:@YES forKey:@"UIUseLegacyUI"]; 

不过,苹果很可能会拒绝你的应用程序在这一点这样做,因为苹果现在拒绝在iOS 7上具有旧外观的应用程序。此外,这个漏洞可能在未来某个时候消失,所以您的应用程序可能会突然发现自己具有未来iOS更新的更新外观。但从技术上讲,这确实可以在iOS 7上运行时具有旧的外观和感觉,并且该应用程序是使用iOS 7 SDK构建的。

+1

苹果发布了一个公告(与我的答案相关),表示截至2月1日,所有应用都必须针对iOS7进行优化。 – Fogmeister

+2

@Fogmeister因此,为什么我在我的回答中说,苹果现在拒绝具有旧外观的应用程序。但我的答案在技术上完成了OP所要求的。他无法将其提交给商店,否则将被拒绝。 – Gavin

+0

大声笑,非常真实。 :) – Fogmeister