Ios 重新签署IPA文件

Ios 重新签署IPA文件,ios,ipa,sign,Ios,Ipa,Sign,我们有一个IPA文件,它是由另一个开发人员用他的证书开发的 我们正在尝试重新签署IPA,该IPA是使用另一个开发人员证书构建和分发的。请让我知道,如果你以前做过这件事或对此有任何想法 尝试了以下链接中提到的一些解决方案,但我们能够生成IPA,但无法将其安装到设备中 我们正在iOS 8中尝试。Mac 10.10.重新签名是一个多步骤的过程,每一步都可能产生错误。所以请有耐心,试着理解每一步 # Start with files: # .ipa-file 'MyApp.ipa' # New prov

我们有一个IPA文件,它是由另一个开发人员用他的证书开发的

我们正在尝试重新签署IPA,该IPA是使用另一个开发人员证书构建和分发的。请让我知道,如果你以前做过这件事或对此有任何想法

尝试了以下链接中提到的一些解决方案,但我们能够生成IPA,但无法将其安装到设备中


我们正在iOS 8中尝试。Mac 10.10.

重新签名是一个多步骤的过程,每一步都可能产生错误。所以请有耐心,试着理解每一步

# Start with files:
# .ipa-file 'MyApp.ipa'
# New provisioning profile 'profile.mobileprovision'

# Unpack the .ipa-file
unzip MyApp.ipa

# Extract the old entitlements from the binary
codesign -d --entitlements :- Payload/MyApp.app > entitlements_old.plist

# Extract the new entitlements from the provisioning profile
security cms -D -i profile.mobileprovision > profile.plist
/usr/libexec/PlistBuddy -x -c 'Print :Entitlements' profile.plist > entitlements.plist
现在有一个手动步骤来编辑
权限.plist
,这样
应用程序标识符
就正确了。请参考
权利\u old.plist
,但请注意,值开头的团队标识符应不同

# Then replace the embedded provisioning profile
cp profile.mobileprovision Payload/MyApp.app/embedded.mobileprovision

# Re-sign the binary and update entitlements
#
# Note: replace "Firstname Lastname (TEAMID123)"
#       with your certificate name
#
codesign -f -s "Firstname Lastname (TEAMID123)" \
    --entitlements entitlements.plist \
    Payload/MyApp.app

# Create ipa
zip -r MyApp2.ipa Payload/
可悲的是,出错时的错误消息并没有给出任何关于到底是什么出错的特殊信息。但它可能是:

  • 使用了错误的签名标识
  • 二进制文件和资源调配配置文件之间的权限不匹配

重新签名是一个多步骤的过程,每一步都可能产生错误。所以请有耐心,试着理解每一步

# Start with files:
# .ipa-file 'MyApp.ipa'
# New provisioning profile 'profile.mobileprovision'

# Unpack the .ipa-file
unzip MyApp.ipa

# Extract the old entitlements from the binary
codesign -d --entitlements :- Payload/MyApp.app > entitlements_old.plist

# Extract the new entitlements from the provisioning profile
security cms -D -i profile.mobileprovision > profile.plist
/usr/libexec/PlistBuddy -x -c 'Print :Entitlements' profile.plist > entitlements.plist
现在有一个手动步骤来编辑
权限.plist
,这样
应用程序标识符
就正确了。请参考
权利\u old.plist
,但请注意,值开头的团队标识符应不同

# Then replace the embedded provisioning profile
cp profile.mobileprovision Payload/MyApp.app/embedded.mobileprovision

# Re-sign the binary and update entitlements
#
# Note: replace "Firstname Lastname (TEAMID123)"
#       with your certificate name
#
codesign -f -s "Firstname Lastname (TEAMID123)" \
    --entitlements entitlements.plist \
    Payload/MyApp.app

# Create ipa
zip -r MyApp2.ipa Payload/
可悲的是,出错时的错误消息并没有给出任何关于到底是什么出错的特殊信息。但它可能是:

  • 使用了错误的签名标识
  • 二进制文件和资源调配配置文件之间的权限不匹配

试试这个软件。用企业证书重新签署IPA对我来说效果很好


试试这个软件。用企业证书重新签署IPA对我来说效果很好


在您的特定设备中,UDID被添加到该临时配置文件中。在您的特定设备中,UDID被添加到该临时配置文件中