ios - 标记方法可用性

标签 ios objective-c

我正在开发一个将在各种 iOS 版本中使用的库。但是,某些方法仅适用于最新版本的 iOS(例如 iOS 7)。

在第三方库中有没有标准的方法来标记这样的方法?

我应该使用 Availability.h 的 __OSX_AVAILABLE_STARTING 宏,还是最好只留给 Apple 方法使用?

最佳答案

如果您只需要 clang,您可以考虑使用可用性属性:

void f(void) __attribute__((可用性(macosx,introduced=10.4,deprecated=10.6,obsoleted=10.7)));

http://clang.llvm.org/docs/LanguageExtensions.html#availability-attribute

我发现可用性 API 有点陈旧且难以合并(#ifdef 堆),而属性是表达可用性的更现代和更精致的方式。

关于ios - 标记方法可用性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19144371/

相关文章:

ios - 关于 UIScrollView 和更改 UIView 所有权的一些帮助

ios - CoreData写对象慢

ios - iOS 9 中 UILabel 中的多行文本

ios - 从 UI BarButtonSystemItem 图标获取图像

ios - 在 iPhone SDK 的 UITableView 中更改交替行的颜色

objective-c - 从另一个类实现中获取 CGFloat 实例变量

ios - 从 firebase 获取子节点的子节点(swift 3)

iphone - NSNotificationCenter:我怎么知道是什么发布了通知?

iOS 我可以构建一个应用程序或服务来保持蓝牙发现设备吗

iphone - 将文件写入/保存到 iPhone