重新签名ipa

网上已经公开了很多签名脚本,比如这个

#!/bin/sh

#获取第一个参数,也就是要用于重新签名的IPA名称,带后缀.ipa
OLD_IPA=$1
#获取第二个参数,也就是重新签名之后的IPA名称,不带后缀
NEW_IPA=$2

#所用的Provisioning Profile文件
RESIGN_PROVISION="Youxin7Developer.mobileprovision"
#所用的证书名称,一定是在keychain里面看到的名字
RESIGN_CERT="iPhone Developer: Kailiang Liu (DEU5UF8KH8)"
#你的IPA解压之后,在Payload文件里面的那个文件夹名称后缀是.app
APPNAME="SoftphoneDemo"


#解压IPA
unzip $OLD_IPA

#删除原来的签名和mobileprovision文件
rm -r "Payload/$APPNAME.app/_CodeSignature"
rm -r "Payload/$APPNAME.app/embedded.mobileprovision"

#拷贝新的profile文件
cp "$RESIGN_PROVISION" "Payload/$APPNAME.app/embedded.mobileprovision"

#重新签名
/usr/bin/codesign -f -s "$RESIGN_CERT" --resource-rules "Payload/$APPNAME.app/ResourceRules.plist" "Payload/$APPNAME.app"

echo "$RESIGN_CERT"

#压缩IPA
zip -qr "$NEW_IPA.ipa" Payload

rm -r "Payload"

需要说明的是,RESIGN_PROVISION是mobileprovision文件的路径,我偷懒,直接放在当前目录下。
RESIGN_CERT是keychain里面的名字。

现在很流行用企业版证书签名,这种脚本应该用的挺多的。


PS: 最近对这个脚本完善了一下,RESIGN_PROVISION和RESIGN_CERT还是没有去掉哦

传送门

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 首先说说对ipa重签的作用。 作用一: 有时候公司在进行软件开发的时候, 发布软件初期使用的是个人账号或者是公司账...
    傻德拉二胡阅读 11,835评论 4 5
  • 参考文章 其中第四步,如果没有entitlements.plist,新建一个,可以直接用 security cms...
    枫枫大世界阅读 3,499评论 6 0
  • ipa 包重签名最新最简单教程 重签名的意义:ipa 重签名最大的用处是,不必重新打包,和配置其它第三方获取 ap...
    红发_KVO阅读 73,277评论 24 64
  • 转发自:http://www.cnblogs.com/CoderAlex/p/5033852.html 引言 关于...
    Remover阅读 21,794评论 6 33
  • 财神节,中国传统节日,农历七月二十二,是财帛星君李诡祖的祭祀纪念日。中国的民间习俗是正月初五拜财神...
    诸子百家之陈修远阅读 5,808评论 0 3

友情链接更多精彩内容