我有一个目前在 iOS4-6 上运行良好的应用程序。但是,我想使用仅支持 5 及更高版本的较新库。删除操作系统版本的后果是什么? iOS4上的人如何备份他们的应用程序?我应该告诉他们从 iTunes 备份 IPA 文件吗?我知道在某些情况下,我需要旧 iOS 版本的文件但无法取回文件。
如果你不得不放弃一个 iOS 版本,你会怎么做?
Best Answer-推荐答案
如果您想放弃对 iOS 4 的支持,后果可能是多方面的,而且肯定会有一些用户陷入您所说的“需要一个无法取回的文件”的情况。
无论如何,我认为告诉您的用户备份应用程序数据和 IPA 文件是一个很好的策略(您可能会设计另一种策略,就像 @benzado 建议的那样,但您提议的策略适用于当然,即使在用户决定通过 iTunes 更新应用程序的情况下)以降低风险。
我唯一不知道的是你将如何告诉他们这样做。也许通过一个中间版本说:这是iOS4的最后一个?不确定。
另一方面,我不确定您是否真的需要放弃对 iOS4 的支持。
看看this post用于一般方法。
如果您只是想添加一个新框架(存在于 iOS5/6 而不是 iOS4),只需弱链接这些框架,然后有条件地包含这些框架的 header 即可。
说你想支持 Twitter;那么你有条件地包含标题:
#if defined(__IPHONE_5_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_5_0
#import <Twitter/Twitter.h>
#import <Accounts/Accounts.h>
#endif
并且有条件地保护 Twitter 方法的使用:
Class tweeterClass = NSClassFromString(@"TWTweetComposeViewController");
if (tweeterClass != nil && [tweeterClass respondsToSelectorselector(canSendTweet)]) {
...
}
(此代码只会在iOS5/6上执行)。
至于弱链接,转到您的目标选项,显示构建阶段,您可以在“与框架的链接”下添加新框架;只需确保您选择右侧的“可选”选项(见图)。
关于ios - 放弃对 iOS 4 的支持,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/12963169/
|