2016-06-17 9 views
1

Werde ich verrückt, oder bin es nur ich? Ich habe verschiedene Eigenschaften, Klassen und Funktionen als __IOS_UNAVAILABLE markiert. Wenn ich dies tue, macht es aber auch die Eigenschaft, Klasse oder Funktion auf tvOS nicht verfügbar. Ist das ein Fehler oder etwas?__IOS_UNAVAIBLE macht es auch __TVOS_UNAVAILABLE?

+0

Ich bin mir nicht sicher, aber ich denke, es ist ähnlich wie die 'TARGET_OS_ ... .' Makros, die bei der Erstellung für tvOS für' TARGET_OS_MAC', 'TARGET_OS_IOS' und' TARGET_OS_TV' zurückgibt. Die Idee von tvOS ist eine Version von iOS, die historisch eine Version von macOS ist. – beyowulf

Antwort

3

Sie sollten __IOS_UNAVAILABLE und __TVOS_UNAVAILABLE nicht in Ihrem eigenen Code verwenden. Diese sind speziell für die Verwendung mit den OS-SDKs gedacht, um zu kommentieren, welche Version des Betriebssystems bestimmte Funktionen eingeführt hat.

Es wird erwartet, dass __IOS_UNAVAILABLE dafür sorgt, dass es auf tvOS und watchOS nicht verfügbar ist, es sei denn, sie sind auf diesen Plattformen ausdrücklich als verfügbar gekennzeichnet (da sie von iOS erben).