1

iPhone OS 3.0 が登場して以来、私はこのアプリを動作させていましたが、iOS4.x を利用するためにいくつかの変更を加え、xcode 3.2.3 を使用して 4.0 に対してコンパイルしました。4 つのジェイルブレイクされたデバイスがあります。

  • 2 iPod touch 2G iOS 3.0
  • 1 iPad iOS 3.2
  • 1 iPhone 4G iOS 4.0

(Apple プロビジョニング証明書を使用して) xcode から実行およびデバッグすると、アプリはすべてのデバイスで正常に動作します。

問題は、iOS3.0 を実行している iPod で ldid 署名付きアプリを実行しようとしたときに発生します。

SSH 経由でアプリをデバイスの/Applicationsフォルダーにコピーしchmod 755ldid -S mybinary再起動します。iOS 3.0 でアプリを起動すると、署名されていない場合と同様にすぐに閉じますが、3.2 を実行しているデバイスでは正常に動作し、 4.0。

新しいコードを削除し、古い xcode (3.2.2) でコンパイルして同じ手順を実行したところ、iOS 3.0 で動作しました。

コード署名チェックを無効にすると思うので、おそらくジェイルブレイクが原因で、Appleの証明書と3.2および4.0を実行しているデバイスで動作するコード署名に関連していると思います。

4.0 に対して、または xcode 3.2.3 を使用してコンパイルすると、ldid 署名が妨げられますか? これを iOS 3.0 以降で動作させることについてどう思いますか?

4

1 に答える 1

1

どうやら ldid は、xcode 3.2.3 でコンパイルされたバイナリが気に入らないようです。この回答の手順に従って、うまくいきました。ありがとうございます。

于 2010-09-12T17:52:54.543 に答える