*目次 [#gd493305]
#contents
*参考リンク [#u9f3fb2b]
-[[SDK Compatibility Guide: Introduction:http://developer.apple.com/iphone/library/documentation/DeveloperTools/Conceptual/cross_development/Introduction/Introduction.html]]
-[[iPhone/Mac SDK(OS)互換性 - Natsu's iPhone App:http://www.j-love.info/natsu/iphone-app/natsus_note/dev/tips/sdk_compatibility.html]]
-[[iOS 4.0 と iPhone OS 3.x の両方で動作するアプリケーションをビルドする設定 - 24/7 twenty-four seven:http://d.hatena.ne.jp/KishikawaKatsumi/touch/20100625/1277476249]]
*SDKの設定 [#m87842d4]
**ベースSDK [#sd494bd3]
-ベースSDKの機能を使ってアプリケーションを作ることができる。
-例えば「iPhoneデバイス4.0」を指定すればマルチタスク関連の機能などを使うことができる。
**iPhone OS Deployment Target [#ze316de0]
-動かしたいOSのバージョンを指定する。基本的にこのバージョンがAppStoreで表示されるアプリのバージョンになる。
-例えば「iPhone OS 3.0」を指定すれば、ベースSDKで「iPhoneデバイス4.0」で開発してもAppStoreで表示されるのはiPhone OS 3.0となる。
*問題点 [#id48c466]
-「ベースSDK」 > 「iPhone OS Deployment Target」の場合、下位バージョンのOSに存在しないAPIを調子に乗って呼び出すとクラッシュする。
-メソッド、関数などを個別に存在チェックするしかないらしい。
-使えないメソッド、関数を一括チェックする方法はないっぽい。ドキュメントでちまちま調べるしかない?
-Xcode3.2.3にすると3.1.xとかそれ以前のシミュレータが存在しないので動かすことさえできない。