1. ホーム
  2. ios

[解決済み] iOS 5でarmv6とarmv7アーキテクチャを構築する方法

2023-01-24 01:50:29

質問

質問 iOS5 Apple は armv6 アーキテクチャを アーカイブス_標準_32_ビット .

のサポートを維持するために iPhone3G でコンパイルしたいのですが、まだ armv6 でコンパイルしたい。

どなたか解決策を見つけられた方はいらっしゃいますか?

どのように解決するのですか?

私は今日、iOS 4.0 のデプロイメント ターゲットを指定して何かを構築しました。アーキテクチャに armv7 しか指定されていないため、Xcode は iOS4.2 より下のものをサポートするには、アーキテクチャに armv6 を含める必要があると警告しました。そのフィールドを編集し、ダイアログがポップアップしたら "+" ボタンをクリックし、リテラルで "armv6" を入力するだけです。

私の場合、アプリを iOS4 と iOS5 で動作させたいと考えています。iOS5 で正しく動作するようにいくつかの変更を加えなければなりませんでしたが、それらの変更はすべて iOS4 に適したコード変更で行われました。

また、iOS4 でアプリがクラッシュせずに動作するように、iOS5 固有の機能をいくつか追加しました。具体的には、iOS5 の機能を使用しようとする前にテストし、iOS5 専用ライブラリーを Optional としてリンクしました。

つまり、iOS5 の世界で iPhone3G をサポートするということは、iOS5 を実行している古いデバイスでアプリが実行できるようにすることではなく、iOS4 以上でアプリが実行できるようにすること (iOS5 の機能の使用に関係なく) を簡単に意味することができるのです。この違いについて考えてみましょう。)

とにかく、armv6 サポートを再び追加するのは非常に簡単です。そして、ポイントはこれだと思います。ある時点で、心配するような armv6 デバイスがなくなれば (理由はどうあれ)、そのために構築する必要はありません。Appleの見解は、誰もができるだけ早く最新のハードウェアにアップグレードするべきだというものです。ですから、その世界では、ツールも最新かつ最高のもの以外をデフォルトにする必要はないのです :-) 幸いなことに(あるいはそうでなくても)、私たち開発者は現実の世界に生きていて、しばらくの間は古いものをサポートしなければならないことを認識しています。そして、Xcode の開発チームもこのことを理解していると思うので、armv6 サポートを非常に簡単に追加し直すことができます。