2012-09-25 9 views
7

Xcode 4.5以降、armv6用にビルドすることができず、iPhone 3Gなどのデバイスをサポートできなくなりました。App Storeアプリケーションでarmv6とiOS 6の両方をサポートしていますか?

Xcode 4.3を使用して、適切に署名されたarmv6バイナリを生成し、lipoを使用して、そのバイナリとXcode-4.5生成のarmv7バイナリを1つにすることは可能でしょうか?

どうすればいいですか?誰も良いチュートリアルを知っていますか?

結果の脂肪のバイナリをApp Storeに提出することはできますか?

+0

Xcodeの作成したアーカイブでプレイしようとしない限り、これは可能ではないと思います。 –

+1

あなたとまったく同じ質問ではありませんが、Mikeの回答を参照してください。[xcode 4.5のリリースビルドのためのarmv6とarmv7の両方をサポートする方法](http://stackoverflow.com/questions/12619124/how-to- armv6-and-armv7s-release-build-in-xcode-4-5)をサポートしています。彼は、Armv6とiOS 6.0の両方のバイナリを作成し、それらをApp Storeに提出されたアプリケーションで動作する方法で組み合わせるプロセスについて説明します。 –

答えて

0

誰かがそれを行う方法を理解したようです。this SO questionを参照してください。

私はまだそれを自分でテストしていません。

5

lipoを使用してバイナリを変更した後、コード署名が一致しなくなりました。したがって、バンドルは後で再コード化する必要があります。

Xcode 4.4以降で作成されたアプリケーションは、iOS 6デバイスでも正常に動作します。 AppleがまだiOS 5.1 SDKで構築されたアプリケーションを受け入れているという報告があります。

Objective Cでは、Objective Cランタイムを介して以前のリンクされたフレームワークにない新しいAPIを使用することができます。 (もちろん、現在のデバイスでの利用可能性を確認する必要があります)

これまでのXcodeおよびiOS-6 SDKの新しいiPhone 5ディスプレイは、568 @ 2xの高さアプリケーションバンドル内のデフォルトイメージ、およびすべてのアプリケーションのウィンドウとビューサイズの設定とプロパティのサイズ変更を正しく行います。アップデート:アップルは、iTunes App Storeに提出されたときに、このように作成されたアプリを承認しなくなりました。

追加: もう1つの潜在的な解決策は、開発を2つの同様のアプリに分割することです。 1つはiOS 4.3以降です。 iOS 4.2.x以降では、iOS 6とiPhone 5をサポートしていません。アプリストア内の2つの異なるアプリ。しかし、Appleがこれを許可するかどうかは不明です。

+0

iOS 5.1 SDKにリンクしているときにiOS 6 SDKの機能を使用するのは、非常に堅実なやり方ではありませんか?私は、armv6とarmv7のバージョンを独立して構築できるソリューションを好むだろう。 codesigningについて:fatバイナリを作成した後でバンドルをコード化する方法はありますか? – tajmahal

+1

FYI:iOS-6より前のSDKに568 @ 2xデフォルト画像がある場合、アップルはバイナリを「無効」と宣言します。私は2つのアプリケーションを持つ道を行く –

+0

バンドルを手動で再コード化する方法はありますか? – tajmahal

関連する問題