115

別のプロビジョニング プロファイルを使用して次のような IPA を生成した後、プロビジョニング プロファイルを使用して .ipa ファイルに署名するにはどうすればよいですか? ベータ テスト用のアドホック プロビジョニング プロファイルを使用して IPA に署名し、アプリ ストア用のアプリ提出プロビジョニング プロファイルを使用して正確な IPA に再署名したいと考えています。

/usr/bin/xcrun -sdk iphoneos PackageApplication -v "${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}"
4

9 に答える 9

211

コマンドラインから行うのは非常に簡単です。これを行うためのスクリプトの要点がありました。現在、私が毎日使用しているhttps://github.com/RichardBronosky/ota-toolsの ipa_sign スクリプトに組み込まれています。これらのツールの使用についてご不明な点がございましたら、お気軽にお問い合わせください。

その核心は次のとおりです。

CODESIGN_ALLOCATE=`xcrun --find codesign_allocate`; export CODESIGN_ALLOCATE
IPA="/path/to/file.ipa"
PROVISION="/path/to/file.mobileprovision"
CERTIFICATE="Name of certificate: To sign with" # must be in keychain
# unzip the ipa
unzip -q "$IPA"
# remove the signature
rm -rf Payload/*.app/_CodeSignature
# replace the provision
cp "$PROVISION" Payload/*.app/embedded.mobileprovision
# sign with the new certificate (--resource-rules has been deprecated OS X Yosemite (10.10), it can safely be removed)
/usr/bin/codesign -f -s "$CERTIFICATE" Payload/*.app
# zip it back up
zip -qr resigned.ipa Payload

新しい署名付きアプリは、resigned.ipa と呼ばれます

于 2012-06-05T22:25:05.590 に答える
37

これを行う方法に関する簡単なツールについては、iResignを確認してください。

[編集] いじくり回した後、キーチェーンを意識した辞任の解決策を見つけました。https://gist.github.com/Weptun/5406993で確認できます。

于 2012-01-02T13:40:17.010 に答える
6
  1. 拡張子を .zip に変更して .ipa ファイルを解凍します。
  2. ペイロードに移動します。.app ファイルが見つかります
  3. .app ファイルを右クリックし、[パッケージの内容を表示] をクリックします。
  4. _CodeSignedフォルダを削除する
  5. embedded.mobileprovisionファイルを新しいプロビジョニング プロファイルに置き換えます
  6. KeyChain Access に移動し、暫定プロファイルに関連付けられた証明書が存在することを確認します
  7. 以下のコマンドを実行します。 /usr/bin/codesign -f -s "iPhone Distribution: Certificate Name" --resource-rules "Payload/Application.app/ResourceRules.plist" "Payload/Application.app"

  8. Payload フォルダーを再度圧縮し、.zip 拡張子を .ipa に変更します。

これが役立つことを願っています。

参考までに、以下のリンクをたどって ください。

于 2015-09-11T08:01:31.570 に答える
1

このアプリを試してみて ください http://www.ketzler.de/2011/01/resign-an-iphone-app-insert-new-bundle-id-and-send-to-xcode-organizer-for-upload/

IPA ファイルを再署名するのに役立つはずです。私は自分で試してみましたが、Entitlements.plist でエラーを渡すことができませんでした。私のプロジェクトに問題がある可能性があります。試してみてください。

于 2011-04-25T15:15:44.023 に答える