4

たとえば、iPhone でオーディオを録音できる独自のクラスを作成したとします。iPhone OS 3.0 では、その機能が Cocoa Touch Framework の一部として提供されるようになりました。

既存のクラスを使用して iPhone OS バージョン 2.2.1 以前をサポートすると同時に、Cocoa Touch Framework が提供する新しいクラスを利用して iPhone OS 3.0 をサポートするにはどうすればよいですか?

4

2 に答える 2

4

Objective-Cは非常に動的な言語であるため、2.xをターゲットにして、3.0の機能の存在を照会できます。

id pasteboard = [objc_getClass("UIPasteboard") generalPasteboard];
if (pasteboard) {
    NSLog(@"Got pasteboard, we're clearly on 3.0+");
} else {
    NSLog(@"Pasteboard not available, definitely 2.x");
}
于 2009-06-23T22:25:03.843 に答える
4

iPhone プラットフォームは、どのモバイル OS よりもアップグレード率が高いため、下位互換性について心配する必要はありません。OS 3.0 API に移行し、アプリで他の優れた機能を実行することに集中してください。

人々があなたのアプリを欲しがっていて、彼らが 2.2.1 を持っているなら - 彼らがしなければならないことはアップグレードするだけです - iPhone OS はアップグレードするのが最も簡単な OS でもあります。

于 2009-06-23T18:51:52.603 に答える