首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用iOS 4.3的iOS 5.0方法构建应用程序?

如何使用iOS 4.3的iOS 5.0方法构建应用程序?
EN

Stack Overflow用户
提问于 2012-02-14 15:47:17
回答 6查看 1.8K关注 0票数 1

我正在为我的应用程序完成符号功能,但不能解决一个问题:因为我正在使用一些新的5.0功能,比如NSFileCoordinator,我不能为4.3构建我的应用程序,因为"dyld: Symbol not iCloud:_OBJC_CLASS_$_NSFileCoordinator“。我如何“取消目标”一些文件(有iCloud方法)来构建4.3版本?提前感谢!

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-02-14 16:13:50

看看this吧。

代码语言:javascript
复制
Class cls = NSClassFromString (@"NSFileCoordinator");
if (cls) {
    // Create an instance of the class and use it.
} else {
    // Alternate code path to follow when the
    // class is not available.
}

另请检查此answer以了解原因

您应该避免依赖版本字符串作为设备或操作系统功能的指示。

票数 4
EN

Stack Overflow用户

发布于 2012-02-14 16:12:33

将它们从源复制中删除:

  1. 单击您的项目文件。
  2. 转到“构建阶段”。
  3. 展开“编译源代码”。
  4. 选择不需要的文件,然后按下部分底部的"-“按钮。

或者,您可以将其从项目中删除(只需删除引用而不是删除文件),它也会将其从本节中删除。

或者,您可以创建预处理器宏来检查用户是否可以运行函数

代码语言:javascript
复制
// System Versioning Preprocessor Macros
#define SYSTEM_VERSION_EQUAL_TO(v)                  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedSame)
#define SYSTEM_VERSION_GREATER_THAN(v)              ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending)
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v)  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN(v)                 ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v)     ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedDescending)

/* Usage
if (SYSTEM_VERSION_LESS_THAN(@"4.0")) {
    ...
}

if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"3.1.1")) {
    ...
}*/

这样,您就可以检查用户正在使用的系统版本,并且只为5.0构建,但如果它是低于5.0的版本,则输入功能代码。

票数 2
EN

Stack Overflow用户

发布于 2012-02-14 16:11:39

我认为在4.3版本中完全关闭iCloud特性会更好。您可以通过在运行时检查iOS版本来做到这一点。在你的特殊情况下,你可以用NSClassFromString()函数检查NSFileCoordinator类的存在,但我很确定在互联网上有更好的方法来完成这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9273364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档