私は、iOS 10でのみ使用可能なUserNotification
フレームワークを使用しています。このフレームワークを使用するメソッドを宣言しています。これまで、次のように可用性のチェックを行ってきました。
@interface MyService : NSObject
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 100000
-(BOOL)handleWillPresentNotification:(UNNotificationContent *)notificationContent;
#endif
@end
XCode 9ベータ版はリリースされたばかりで、このコードでは警告が表示されます
「UNNotificationContent」は部分的です:iOS 10.0で導入された「handleWillPresentNotification:withCompletionHandler:」に注釈を付ける
問題は、Objective Cコードでメソッド全体にどのように注釈を付けるかです。 Xcode 9が導入したことを知っています
if (@available(iOS 10, *)) {
// iOS 10 ObjC code
}
しかし、どのようにメソッド全体(署名を含む)をラップするのですか?
乾杯
自分の質問に答えるには、次のようにNS_AVAILABLE_IOS
マクロを使用してメソッドをマークする必要があります。
-(BOOL)handleWillPresentNotification:(UNNotificationContent *)notificationContent NS_AVAILABLE_IOS(10_0);