7

現在 (2008 年 12 月現在) の iPhone SDK では、アプリを作成するときに 2.0、2.1、2.2 の 3 つのバージョンから選択できます。-- 以下、2.1 は無視します。

私の仮定:

  • 2.2 は 2.0 よりも多くの API 関数を利用できます。
  • 2.2 は 2.0 以降のバグを修正しました。
  • 2.2 は 2.0 と下位互換性があります (ビルドと実行の両方で)。
  • SDK 2.0 でビルドすると、アプリは iPhone 2.2 で動作します。
  • SDK 2.2 でビルドすると、アプリは iPhone 2.0 では動作しません。

アプリをビルドできる最も古いバージョンを使用するのが最善だと思います。この方法では、古い OS を実行している iPhone で実行できます。

しかし、2.0 でビルドした場合、アプリに何かが欠けているというリスクはありますか? たぶん、いくつかの速度またはより優れた UI 要素。しかし、2.0 と 2.2 の間には、気にするほどの違いはないのではないでしょうか?

私の質問は次のとおりです。どの SDK を選択すればよいですか?

  1. ターゲット市場を広げるために構築できる初期の SDK。
  2. 常に最新の SDK を使用しているため、アプリが改善の恩恵を受けますが、市場が縮小する可能性があります。

(そして、答えが明らかな場合、なぜ私に選択肢があるのでしょうか?!)

4

3 に答える 3

27

iPhone OS 2.2 SDK を使用しても、iPhone OS 2.0 用にコンパイルできます。これを行う方法は、Mac OS X の場合と同じです。使用するSDKによって、 API を使用するOS の最新バージョンが決定され、使用する展開ターゲットによって、使用する OSの最も古いバージョンが決定されます。で実行します。これらは通常、Xcode のプロジェクト レベルで設定する必要があります。

そのため、iPhone OS 2.2 SDK に対してソフトウェアをビルドし、2.2 以降がインストールされたデバイスで実行する場合は 2.2 の機能を使用できます。ただし、2.2 より前のオペレーティング システムがインストールされているデバイスで実行している場合は、Deployment Target を 2.0 に設定し、 2.2 の機能を使用せずにアプリケーションを正常に動作させることができます。

于 2008-12-21T23:02:57.610 に答える
2

オプション#1を選択します-2.0にコンパイルします。これが私たちのアプリで行うことです。古い 2.0 O/S を実行している人がまだたくさんいて、2.2 にコンパイルすると、そのデバイスではアプリが実行されません。

とはいえ、アプリの開発中にバグが発生し、それが新しいファームウェア バージョンで修正されていることがわかった場合、回避策がない限り、選択肢はほとんどありません。また、新しいバージョンごとに追加された新機能もありますが、それらの機能の包括的なリストはわかりません (API レベルで)。

于 2008-12-19T05:13:53.093 に答える
0

私のテストでは、2.0 を使用すると、2.1 で表示されるアプリケーション バッジ機能を利用できません (したがって、少なくともそのレベルを使用する必要がある場合があります)。

ティム

于 2009-03-30T22:21:01.093 に答える