2012-09-20 6 views
7

XCode 4.5にアップグレードしてarmv7s archサポートを追加しましたが、XCode 4.5でarmv6バイナリを生成できません。 あなたのデバイス要件を拡張することは許可されています。デバイス要件を制限するためにバイナリの更新を提出することができます。 "armv7ではXCode 4.5にアップグレードされましたが、XCode 4.5ではarmv6が削除されましたが、要件を制限できません。

armv6を削除できるかどうか、または回避策がある場合は誰にも知られていますか?

私はアプリケーションではなく、フレームワーク(ライブラリ)を構築していると言えるでしょう。だから、私はアプリ開発者をサポートしたい。

+1

この質問では、Googleの最初のページに表示、ので、私はこの答えに、他のユーザーを指すと思った:http://stackoverflow.com/a/12678077/206520 – mmilo

答えて

2

armv6は、元のiPhoneとiPhone 3GのCPUアーキテクチャです。どのように2つの世代のiOSとそれ以上のものがサポートされなくなったかを見ると、サポートされているターゲットからそれを削除することは安全です。実際、armv7をターゲットにすると、現在のデバイス用に最適化されたバイナリが生成されるはずです。

どのようにライブラリを開発しているかを見ると、これはユーザーに制限を与えます。あなたはarmv6ユーザーまたはarmv7ユーザーのどちらかを制限するでしょう - その選択は私には明らかですが、安全であるために、あなたのarmv7およびupバージョンを新しいプロジェクト(おそらく "v2")としてブランチすることをお勧めします。プロジェクトをアップグレードできるまで安全に使用してください。サポートされていないオリジナルを維持して、アップグレードの迅速化を促します。

+0

なぜ、このコメントはdownvotedでしたか?私たちは私たちの製品のためにこれをしました。 –

+0

私はこれを落としたとは思わない。 iOS 4.3以降をサポートしているとすれば、armv6を削除できます。ビルドマシンはXCode 4.5を取得し、armv7/armv7s/i386のみをビルドします。 armv6が必要な人は誰でも古いリリースを使用する必要があり、サポートが必要な場合は、古いライブラリを手動でパッチするためにXCode 4.4を保存する必要があります。私がそれを避けることができれば、ライブラリの新しい名前(例: "v2")を使用する必要はありません。 – Christian

+0

これをサポートしないことを決定し、古い、サポートされていないlibに "古い"名前を付けることができます。 –

0

あなたの質問を読んだ後、私はあなたが何らかの問題を抱えている理由について混乱しています。あなたは、フレームワークを構築しているので、この制限は適用されません。彼らはARMv6のをドロップしない限り、以前にあなたのフレームワークを使用

  • ユーザー、ARMv6以降をサポートされているバージョンは、とにかく自分のアプリを更新することはできません。

  • 新しいアプリのデベロッパーはXCode 4.5を強制的に使用するため、すべてがArmv6を削除します。新しいアプリでフレームワークを使用したい場合、Armv6をサポートすることはできません。

フレームワーク開発者として、このガイドラインはまったく当てはまりません。

編集 - また、FacebookのアプリはiOS 4.3のみをサポートするようにアップデートされ、Armv6デバイスのサポートが中止されました。http://itunes.apple.com/us/app/facebook/id284882215?mt=8

+0

私は、デバイス要件を制限できることを示すための証拠が必要だと思います。あなたが言っていることは、https://developer.appleというリンクと矛盾しているようです。com/library/ios /#documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/B_DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html – Christian

+0

私の答えが変更されました。 –

+0

私は技術的には、ライブラリの既存のユーザーはエンタープライズ開発者プログラムのユーザーかもしれないと思うので、まだarmv6バイナリを開発して配布することができます。しかし、その可能性は小さいですし、XCode 4.4で構築されたバイナリをいつも与えることができます。もう一つは、まだ試していないが、XCode 4.4のコンパイラでarmv6バイナリを作成し、iOS6 SDKでビルドしたバイナリにスプライスするために 'lipo 'を使うことだ。私はアップルがこのようなトリプルアーチバイナリを拒否するかもしれないと思う。 – pmdj

関連する問題