2009-05-25 15 views
2

iPhoneデベロッパープログラムの登録開発者として、appleからメッセージを受け取り、すべてのアプリケーションをiPhone OS 3.0と互換性のあるものにするよう要求しています。 iPhone OSと互換性のないアプリケーションを処理しないと言われましたiPhone OS 2.2.1とiPhone OS 3.0用に開発

iPhone OS 3.0で動作するようにコードを変更した場合、2.2.1では動作しません。

cell.textLabel.text = @"text"; 

2.2.1では、私が代わりに記述します:

SDK 3.0で必要であるとして、次のサポートされていないインスタンスSDK 2.2.1の場合

cell.text = @"text"; 

をそして、それはありません唯一の問題。

この問題はどのように処理しますか?

ありがとうございます。

答えて

3

NDAを壊すことなく2.0/2.2.1をターゲットにしているストアにある現在のほとんどのアプリも3.0以下で動作するため、それは残念だと言っても過言ではありません... APIが最終的に廃止される可能性はあるものの、今は廃止されました。 3.0をターゲットとするアプリの開発を開始すると、そのアプリの使用を中止する必要があります。その間に、あなたは3.0のことを聞いていなかったのと同じように、あなたは2.2.1のためのビルドを続けたいと思っています。 3.0であなたのアプリをテストしたいだけですが、あなたが何か変わったことをしない限り、問題はないはずです。

+1

ソフトウェアのバージョンによって分岐するコードを追加してはいけないと言いましょう...コードパスをデバッグしてテストするのがずっと難しくなります。 –

2

NDAのためにOS 3.0について詳しくは触れません。

this SO question and answerにチェックを入れてください。 OSを区別する方法を示します。

編集:私は、私はおそらくちょうどフォームのNSStringの「1.2」になります[[UIDevice currentDevice] systemVersion]に基づいて、条件付きでこれらのインスタンスのそれぞれをラップしたいフランソワ・P.

1

に同意します「2.0」または「3.0」。

コードにインスタンスがたくさんある場合は、メソッドを抽象化したり、問題のクラスをカテゴリで拡張したりします。

関連する問題