Tasaki です。
今回は、それが必要かという疑問はありますが、
iPhone SDK のバージョンをコンパイルの条件にするための
手法について解説しようと思います。
ただし、これは undocumented な方法なので、
使用については自己責任ということでお願いします。
やり方はいたって簡単で、
__IPHONE_OS_VERSION_MIN_REQUIRED というマクロの
値を評価するというものです。
このマクロは現在のSDKのバージョンを表しています。
例えば、2.2 なら 20200、2.2.1 なら 20201 という具合です。
具体例でいきますと、
AVFoundation フレームワークは、OS 2.2 以降に追加されたものです。
なので、当然 2.1 以前には含まれていません。
そこで、SDK2.2 以降がターゲットの場合のみ有効にしたい
といった場合には、以下のようにします。
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 20200
#import <AVFoundation/AVFoundation.h>
#endif
ただし、この方法、
シミュレータだと SDK 2.2.1 でも 20000 が返されてしまうので、
使えるのは実機の場合に限られます。
なんかビミョーですね。
次回はもうちょっと役立つ話をしたいなあ。
- 関連記事
-
スポンサーサイト
trackbackURL:http://appteam.blog114.fc2.com/tb.php/6-d13ee241