iOS证书学习推荐博客代码签名探析,本文重点在于介绍ios8.1.3系统ipa包重签名(如企业证书)无法安装的问题。苹果在iOS8.1.3系统以后加强了对ipa安装包签名的验证,主要区别在于ipa唯一标识在原有Bundle Identifier的基础上增加了证书ID,也就说安装包和手机上已安装APP的Bundle Identifier即使一致,如果两者签名的证书ID不相同,那么安装包也无法正常安装。证书ID是什么?
图中方框里字符串就是证书ID,升级后的ipa标识就是证书ID+BundleID,只有两者完全匹配,安装包才能覆盖安装,否则就会提示安装失败。解决办法就是卸载安装包,重新安装!
1 |
The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile |
目前,重签名主要用于企业证书重签名个人证书发布的ipa包,包括各种助手及企业内测包的发布等。在重签名前,让我们先看看一个完整的ipa包有哪些与证书相关的东西!打开ipa包,会发现_CodeSignature和embedded.mobileprovision两个文件
- _CodeSignature,ipa包签名文件
- embedded.mobileprovision,证书配置文件
因此,替换上面两个文件就解决了ipa重签名的主要问题。此外,代码签名探析文中还提到entitlements.plist授权文件,重签名时也需要处理。按照下图内容创建plist文件,输入相关信息。
整个签名过程如下(文件路径自定义)
1、解压ipa安装包
1 |
cp olinone.ipa olinone.zip |
2、替换证书配置文件(文件名必须为embedded,不得自定义)
1 |
cp embedded.mobileprovision Payload/olinone.app |
3、重签名(certifierName为重签名证书文件名,可以加证书ID后缀)
1 2 |
certifierName="iPhone Distribution: olinone Information Technology Limited(6a5TVN58SY)" codesign -f -s $certifierName --entitlements entitlements.plist Payload/olinone.app |
4、打包
1 |
zip -r olinone.ipa Payload |
很多朋友在重签名时会忽略第二步或者没有指定entitlements.plist,都会造成ipa包安装失败。如果有其它关于签名的问题,可以在文章下面跟我留言!
喜欢请点赞->https://github.com/panghaijiao,谢谢你的来访!
9月22号更新,有朋友反馈9.0无法打开的问题,可以访问iOS9适配教程
6月22号更新,详情教程地址
12月21日,自从本文发布后,收到了很多朋友的反馈,感谢大家。很多朋友也提出了遇到的各种问题,再次需要补充两点
有些朋友希望修改bundle ID重签名,据有些朋友说是可以的,不过我目前还不知道怎么做,有知道的朋友可以告诉我,替各位谢谢了
其次,有些朋友希望修改ipa包里的素材,然后再签名,以我所知,这个貌似也行不通
Pingback: WWDC 2015 将于 6 月 8 日在旧金山开幕 – iOS 移动开发周报 – 剑客|关注科技互联网
Pingback: iOS移动开发周报-第43期 – 剑客|关注科技互联网
感谢转载!
iOS9 上此方法失效了,请问博主有解决方案吗?
https://github.com/ChenYilong/iOS9AdaptationTips
输入codesign -f -s $certifierName –entitlements entitlements.plist的路径 提示cannot read entitlement data
Pingback: iOS移动开发周报-第43期
Pingback: iOS移动开发周报-第43期 | 微时代
如果修改里面的图片资源,然后重新签名,能安装成功,但是闪退,如何解决
确定闪退的原因是因为替换图片吗?
您好,已经解决了,不知道什么原因,第二次重新打包就不闪退了,这边两台测试设备都是,第一次打包的一直闪退,重新打包后正常
你好,从App Store上下载的app,重签名后可以安装,但是打开闪退的问题,你解决了木有?我这边也是同样的问题。。
您说的二次打包是怎样的、我也试图去修改资源后重签、但是装的途中日志显示增加了好多 ._*(*是修改后的资源文件名称) ,能安装\就是闪退~ 您说的二次打包是怎样的?
方便留个qq吗
方便留个QQ吗,发到我邮箱即可
你好,我想替换ipad包中的一个plist文件,该怎么做呢??
另外,像QQ这种,打包之后能成功安装,但打开就闪退,如何解决呢
刚测试的,上架到AppStore的app在7.1.2iPad 7.1.2iPhone4 8.1.2iPhone6 8.13iPhone6P 均可安装,但打开闪退。。。。必须最开始就是用企业证书打包的ipa ,重新签名后才可用
appstore的ipa包是经过加密的,重签名应该是不行的!没有试过,不是很清楚,有时间可以研究下。不过只要不是appstore的包,即使是开发签名的包也是可以用企业证书重签名的!
有一个问题想请教一下
博主上面说 app 签名 主要与这两个文件有关
_CodeSignature,ipa包签名文件
embedded.mobileprovision,证书配置文件
我自己测试的时候 一直没有用 entitlements.plist 这个文件
我首先把 app 包里面的 _CodeSignature 备份一下, 然后删除
接着调用 codesign -f -s ‘xxxxxxx’ xxx.app 直接签名
然后这时候得到的app 打包 安装失败
将重签之后的app 中的_CodeSignature 取出 与原来的 用 文本文件进行对比 发现是一样啊 但是却无法安装
如果用博主的方式 添加一个 entitlements.plist 就能成功安装
是的,在重签名时必须指定entitlement.plist文件,因为打包后的签名证书和打包之前的签名证书是不同,如果不指定新的entitlement,那么就会出现两者不同无法安装的问题!
感谢博主解答
刚才又去看了一下 xcodebuild 的log 发现 其也是调用了一个 entitlements 文件
CodeSignature文件在codesign时系统会为我们重新生成的,所以不需额外处理!
是的 codesign 是会自动创建CodeSignature 文件
我之前只是疑惑, 为什么原始app 能安装
codesign -f -s ‘xxx’ 不加 entitlement.plist 签名之后的app 就不能安装
于是 就把原始CodeSignature 与 签名之后的 CodeSignature 拿出来对比 发现是一样的
我的CodeSignature没有重新生成是什么原因啊
如果是企业证书,创建in house类型的pp文件的时候,现在貌似不能选择带通配符的app ID了。除了每个应用都建一个Explicit app ID,博主有没有其他方法呢?
现在苹果对证书签名管理比较严格,目前通配符好像是不行了,很遗憾,我也不知道如何解决通配符的问题!
在签名的时候遇到
iPhone: ambiguous (matches “iPhone Developer:xxxxxxxx” adn “iPhone Distribution:xxxxxxxxxxxxxxxxx” in/Users/km-cn/Library/Keychains/login.keychain
请问是原因,我查了下,没有重复的证书
按提示意思应该是你证书选错了吧?把开发的和发布的证书搞混了!
不像是你说的那样,我删一个报错的证书,就会报另一个错证书的错,最后只剩下我要签名的证书,就会报Distribution:: No such file or directory
重签名的时候需要用Distribution证书才能签名,你可以先在xcode中设置好发布证书,然后用Archive打包,如果打包成功表面证书是对的,在xcode中查看当前发布证书名,设置到脚本中就可以了
我遇到一样的问题 请问你是怎么解决的
请问你后来是怎样解决的?
证书是正确的,用iResign这个工具也是直接报这个错
用iResign我弄好了,但是如果不修改identifiers 会报 Product identifiers don’t match,你知道需要改么
identifiers与证书必须一一对应,特别distribution证书,不然就会出现证书与identifiers不一致的问题
下了一个破解版本的微信,包中并没有entitlements.plist文件,倒是有xcent,然后改了相应的info文件中的bundleID,以及xcent文件中的application-identifiervalue字段为我证书的bundleID,签名之后总是提示安装失败,我是不是要自己copy一个entitlements.plist文件进来呢?
entitlements.plist文件是没有的,主要记录了安装包的基本信息,需要自己根据app的bundle ID以及其它信息填充修改的
非常感谢妹子的分享,我已经搞定了。只是里面还有一个小细节就是 Info.plist 重新设置一下Bundle identifier 等内容。
我晕,俺是真正的汉子,不是妹纸,谢谢!
你好 ,我遇到了同样地问题,请问需要怎么修改啊?
你好 我遇到了同样地问题,请问需要怎么修改啊?
有时候,只签名
Payload/olinone.app
是不够的。framework. appex 都是需要签名的。是的,这块我还没有研究,不知兄台有相关资料推荐吗?或者有比较完整的解决方案吗?
请问扩展文件怎么重签名
想请教下。我现已有的一个ipa(bundleID为 com.aa.bb)是用证书(ID:111)打包的版本,现在想用企业证书重签名。
我的操作如下
1、用企业证书添加一个ID为 com.aa.bb.enterprise的证书(ID:222),然后拿到授权文件 com.aa.bb.enterprise.mobileprovision
2、构造 entitlements.plist,将其中的ID和包名全都改成222 和 com.aa.bb.enterprise
3、然后删掉_CodeSignature,替换掉embedded.mobileprovision,再重新签名。
最后一直是安装不了。请问错在哪了?
ipa有 watch或者其它扩展功能吗,把它们去掉,重签名目前只解决了安装包的签名问题,像watch其它没有重签名。安装的时候也可以查看手机日志,看看提示内容!
并没有任何扩展功能,只是一个带百度地图的小软件。。
另外,想请教下我的操作方法是否哪里有错??
企业证书是发布证书吗?还有安装出错日志提示啥?
我也是遇到这样的问题,请问下 你解决了吗?有没被的解决方案
我也是遇到这样的问题,请问下 你解决了吗?有没解决方案
请问博主,此方法可以让重签名的ipa与appstore的ipa覆盖安装吗?我现在能同时安装两个,无法做到覆盖安装。
文章里面已经说了,现在安装包需要验证证书ID+ipa bundleID,如果你重签名的是企业证书,肯定是无法和appstore的开发证书相兼容的,appstore可以覆盖企业版,但是企业版无法覆盖appstore的!
按照这个方法从appStore下载一个ipa,然后用企业证书重签名,安装闪退,有什么办法?
appstore的我没有试验过,不清楚,不过appstore的包一般是加密过的,应该不能重签名安装吧!
请问博主:
我用企业证书打包并运行在多个设备的程序,证书在app developer被不小心删除了,现在的现象是,部分设备当天就不可用了,闪退。其余设备还正常可用。但是正常的设备也每天都不可用一些,原因是什么,博主能帮忙分析一下吗?非常着急,十分感谢。
设备里面的配置文件是有缓存的,系统在验证某个APP的配置文件时,会先验证ipa包里的配置文件,如果包里的配置文件与签名证书不匹配,会去手机的缓存中寻找匹配签名证书的匹配文件,如果都没有,该ipa包就无法安装或者运行不了。你可以在Xcode-Window-Devices-旋转自己设备右键-Show Provisioning Profiles里面查看所有缓存的配置文件,当然,为了验证当前签名的配置,可以把缓存里面的所有文件删除,重新打包安装就知道签名文件已经已过期或有效了。我猜测苹果设备自己会隔断时间同步签名证书是否过期,如果过期就无法运行ipa,出现崩溃的现象!对于过期的app,会在手机界面该icon名称右边标识一个红点,和刚更新app名称右边有个小点一样,只是颜色不同,希望对你有帮助!
App Store下载的ipa是经过加壳的, 如果想要二次签名 , 需要用脱壳工具破壳才行.
请问博主,我7月31日重签名后的ipa安装成功。但是今天发现相同的ipa却安装失败。博主能帮忙分析一下是什么原因吗?十分感谢!
还是证书相互覆盖的问题,比如当前有两个3个安装包,一个个人开发证书签名包A,一个appstore上的包B,一个企业证书重签名的包C,个人开发证书A和appstoreB由于是同一签名,可以相互覆盖,企业重签名C与个人开发A签名不同无法相互覆盖,但是appstore由于由最高权限,可以覆盖企业重签名C,但是企业重签名无法覆盖appstore。所以你开始没装包,可以安装重签名的C,但是后来可能升级到appstore包B,然后就无法被企业重签名C覆盖的,但是你可以用个人证书签名A覆盖appstore,不知道你明白我意思没?要想一直安装覆盖企业包C,就无能被appstore的B覆盖,除了删除重装!企业C包只能自己覆盖自己!
这个app没有个人签名版的,也没有appstore版的哦
我发现一个奇怪的现象,当我Provisioning Profile选择Automatic的时候,打出的ipa包可以企业安装。但是当我Provisioning Profile选择企业发布证书的时候打出的包却安装失败(上周五安装成功,现在又不行了)。博主能帮忙分析一下原因么?十分感谢!
我一般是这样试验的:先用企业发布证书打包,如果安装成功的话,就修改包里面的一个txt文件或者一张图片。一般修改之后是不能再安装了的。然后我再用企业发布证书重签名这个修改文件后的包,如果可以安装就说明重签名成功。我上周五整个流程都跑通了,可是今天再次测试的时候却都是安装失败,只有那个Provisioning Profile选择Automatic打的包可以成功安装。
多谢博主的耐心解答疑惑!我的问题已经解决了,原因是企业发布证书被撤销的缘故。
你好,我测试如下情况:企业AppA1.0 —重签名改bundle id — 企业AppB1.0 — 企业AppA1.1 覆盖安装,会出现两个App,不会覆盖安装,怎么解决啊?
修改bundle就相当于两个APP,系统区别APP就是通过bundle id区别的,所以想覆盖是不能修改bundle的
你好,我用了您的方法。
在修改了embedded.mobileprovision和相应的entitlements.plist文件之后。
生成了一个企业版的ipa。
该ipa在ios7上安装和**使用**没问题。
可以再ios8上安装没问题。一打开就会闪退。
请问这个是因为什么您知道吗?
期待您的解答。
你的ipa包是不是加密过?
为什么,我打包了,无法安装成功?
你这个说的太简单,app store上的包是无法重签名安装的
结论:1.appStore上包是用企业证书签名后,在7.x上可以安装,但是无法启动,直接闪退。2.在8.x上无法安装。
楼主,有办法可以用企业证书,重新签名已经发布到appStore上的ipa包吗?就能达到,各种助手达到的效果,就可以了。【就是公司开发一个app,可以通过企业级和appstore发布,app使用的微信、支付宝等都可以正常使用】?
谢谢!
您好,请问有可以不改变bundleidentifier的重签名方法吗?
类似某些苹果助手就是没有改变bundleidentifier实现了重签名,知道的话告知我一声…谢谢
文中介绍的重签名无需改变bundleidentifier
例如:我签名前的bundleidentifier为com.abc.mob……我用另外的bundleidentifier(如:com.def.uio)生成的证书进行重签名…..那么重签名后的bundleidentifier还会是com.abc.mob吗?
是的
用你给的方式重新签名安装一直失败,但是用 iReSign重签就可以,而iReSign 又做不到换账号重新签名bundle id不变,一直提示iresign product identifiers don’t match, 求解博主
我这边目前测试是可以安装的,可以再仔细试试,有什么问题可以给我留言!
我找到重签一直安装失败的原因,我写的命令中包含有路径,生成的包也会包含。再请教楼主一个问题,企业版AppA bundle A,我重签名,entitlements.plist 中的bundle id 我填的是B
重签名之后,覆盖安装报错 502: Upgrade’s application-identifier entitlement string (XXXX.com.shidou.wificlient.enterprise) does not match installed application’s application-identifier string (XXXX.com.shidou.client.enterprise.test); rejecting upgrade. 如果entitlements.plist的bundle id我填写的是A,覆盖安装报错Entitlements found that are not permitted by provisioning profile,因为provisioning 填的是B 对应的证书?
文章里面已经详细描述了,现在系统区别APP的方式是证书ID+BundleId,只有两者完全相同才能覆盖安装,这个限制是从8.1.3之后实施的,之前只区别BundleId,越狱设备不受限制,只依靠bundle区别!不过 appstore具有最高级,只有bundleid相同,可以覆盖任何证书签名的包!
也就是iOS8.1.3之后,企业号被封,新的企业号重新签的安装包是没办法覆盖安装之前的App的是吧?
是的,可以这么理解!
目前有办法重签带扩展的应用吗?
目前还没找到什么办法,不过应该是可以的,估计是命令行指定不同扩展采用不用的签名吧,有待研究,如果你有新的发现记得告诉我!
请问换bundle id能重签成功吗?我现在又一个ipa裸包,换bundle id之后重签过程中出现 replacing existing signature iOS7安装不了 安装的时候出现验证失败,您有出现这种情况吗?
请问您换bundle id能重签成功吗?
我现在又一个ipa裸包,换bundle id之后重签过程中出现 replacing existing signature
iOS7安装不了 安装的时候出现验证失败,您有出现这种情况吗?
换bundle重签名,目前我还实现不了
请问博主,此方法在iOS9上失效了,弹出“此时无法安装”,有新的解决方案吗?
iOS9 上此方法失效了,请问博主有解决方案吗?
现在企业账号生成embedded.mobileprovision文件之前,会要求先生成appid,问题在于公司账号申请了appid,企业账号就不能再次申请同样的了。博主有解决办法吗
企业证明不用注册完全相同的appid,可以使用*通配符
通配符只能用于内部测试,不能应用于发布,打包的时候是通不过的啊
可以的
版主能否留下QQ,帖子回馈有点慢,大家能不能分别把QQ留下,好好交流下
版主能否留下QQ,帖子回馈有点慢,大家能不能分别把QQ留下,好好交流下
codesign -vv -d 命令展示签名成功,但是却安装失败
entitlements.plist 这个文件单独用Xcode创建后,是否添加到.app包里呢,我添加进去,然后重签名,出现了 replacing existing signature 结果,但是安装失败,该怎么搞呢?请大神指点啊
关于界面有QQ信息,安装失败可以先卸载再安装试试!不同证书之间是无法覆盖安装的
楼主你好,我用的企业证书重新签名 ipa裸包,中间总是出现******.app: replacing existing signature,打包后安装总是出现验证失败,请问楼主这是什么原因呢
楼主你好,我目前重签名后,ipa包可以安装,但是只能在iOS8.1.3以下安装,以上的系统不能安装,不知道是什么原因,还请楼主帮忙指点。另外楼主说指定entitlements文件,该如何指定呢?是创建一个entitlements.plist文件,然后拷贝到*.app中吗?我的签名/usr/bin/codesign -f -s “$CERTIFICATE” –resource-rules Payload/*.app/ResourceRules.plist Payload/*.app使用这个命令的时候,iOS8.1.3以下都能安装,以上无法安装。使用/usr/bin/codesign -f -s “$CERTIFICATE” –entitlements entitlements.plist Payload/*.app这个命令的话,iOS8.1.3以下不能安装,并且测试好多个ipa包,也会有不成功的,其它步骤与楼主上面的一样,在上面这些步骤中我增加了
/usr/libexec/PlistBuddy -c "Set CFBundleIdentifier $userAppBundleidentifier" Payload/*.app/Info.plist
命令,用来改变bundle ID,目的是为了实现同一个ipa包打包多个。请楼主指导一下我出现的问题应该如何解决呢?谢谢。楼主你好,我目前正在使用动态编译的方式打包ipa文件,然后进行重签名ipa包,不过经过测试发现,我使用的方式和楼主提供的方式一样,但是有一句命令的地方有些许不同:我使用/usr/bin/codesign -f -s “$CERTIFICATE” –entitlements entitlements.plist Payload/*.app命令进行测试时,无法安装,当我将这个命令改成 /usr/bin/codesign -f -s “$CERTIFICATE” –resource-rules Payload/*.app/ResourceRules.plist Payload/*.app这句时,就可以安装,但是只能在iOS8.1.3以下系统安装,请楼主指点一下哪里出错了:代码如下:
dstDir=$1
cd $dstDir
###############
IPA=$2
# echo “$IPA”
PROVISION=$3
CERTIFICATE=”iPhone Distribution: YiFace inc.” # must be in keychain
userAppBundleidentifier=$4 ###Magic add
# unzip the ipa
unzip -q “$IPA”
rm -rf Payload/*.app/_CodeSignature Payload/*.app/CodeResources
###这是用来改变info.plist文件中的bundel身份的
/usr/libexec/PlistBuddy -c "Set CFBundleIdentifier 3F7MGRV23Y.$userAppBundleidentifier" Payload/*.app/Info.plist
#############
cp $PROVISION Payload/*.app/embedded.mobileprovision
# /usr/bin/codesign -f -s “$CERTIFICATE” –resource-rules Payload/*.app/ResourceRules.plist Payload/*.app
/usr/bin/codesign -f -s “$CERTIFICATE” –entitlements entitlements.plist Payload/*.app
zip -qr $IPA Payload
rm -rf Payload/
–entitlements entitlements.plist 参数是用于设定重签名包得证书ID的,所以是需要要的,不然8.1.3以上就无法安装了,至于不能安装的原因,你可以查看苹果日志,看看安装出错时系统日志提示!
谢谢,已经解决了,主要还是entitlements.plist文件的问题,这个文件的配置错了。目前各版本下都能安装
有出费用合作,你的联系方式多少?我邮箱w889292810@163.com
你好,我这里重签名都OK了,感谢,只是现在我想修改下bundle包里面的图片资源,修改后重签就闪退,日志提示怎么了很多资源文件 ._*(*是修改后的资源文件名称),然后装上就闪退/有办法解决吗?
你好,我这里重签名都OK了,感谢,只是现在我想修改下bundle包里面的图片资源,修改后重签就闪退,日志提示怎么了很多资源文件 ._*(*是修改后的资源文件名称),然后装上就闪退/有办法解决吗? 日志报错: Signed resources have been added, removed, or modified
IPA会对所以资源签名校验的,所以修改资源后是无法安装的,很遗憾,目前我还没找到什么解决方法!
焦神,我走了第三步,并且提示replacing existing signature, 但是执行完成后打印信息,发现identity 并没有修改,安装也失败,会是什么原因啊
麻烦问一下这个 entitlements.plist 文件设置的一些参数是企业版证书里的参数么,因为两个证书的参数不一样,我貌似都试了试都不行,
我具体操作是,把plist文件,ipa包,证书,放在一个文件下,用终端操作,1.压缩zip,2,鼠标点击zip出现Payload(不然抱找不到payload文件夹的错)然后再往下操作您看对么
看文章详情,使用命令行签名,不是简单的压缩
我是通过终端的命令行操作的,但是不手动点击zip解压缩,就会报找不到payload文件夹的错,以下是我的步骤:(ipa包,描述文件,plist文件放在同一文件夹下)
1.cp WYPT.ipa WYPT.zip
(执行完这步之后再往下走就得点击zip压缩文件了,不然报找不到payload错)
2.cp embedded.mobileprovision Payload/WYPT.app
3.certifierName=”iPhone Distribution: Beijing zhaike Investment Co. Ltd”
4. codesign -f -s $certifierName –entitlements entitlements.plist Payload/WYPT.app
5.zip -r WYPT.ipa Payload
既然提示找不到payload文件夹,肯定是路径不对,注意当前执行命令所在路径
有出费用合作,你的联系方式多少?我邮箱w889292810@163.com
你的QQ多少
查看关于
appstore 上导出的ipa 或者从越狱机器上导出的ipa 可以重签吗?我尝试的总是闪退。
appstore的包经过加密的,无法签名咧
请问带有apple watch ipa包能重签名嘛 ,我今天签的时候发现会出现codesign_allocate helper tool cannot be found or used 这个问题
我的CodeSignature没有重新生成是什么原因啊
codesign -f -s 用了这命令 在下边查看签名信息时没有资源目录,在包里没有找到CodeSignature,感觉是没有生成
您好 大神,咨询一下,我从pre.im下载好绑定过我的udid的ipa文件,提取后,用iresign重新签名上传后,下载打开闪退,用utsign重签名后,可以打开,但是软件里的功能丢失。。求大神指点,听人说是动态库问题,不太懂
没有用过iresign咧
我也是用iresign重新签名上传后,下载打开闪退,你怎么解决这个问题了? 我估计你也是 微信的吧。
交流下 我QQ677723
公司的一个app之前是我们公司的企业证书分发的,后来转让给移动那边,证书换成个人的了,现在移动那边要求我们给app添加一个today extension,并且要求用企业证书发布出去。目前的功能是做完了,但是无法做到In-House分发。我试着将AppID从移动那边的个人开发者账号上删除,然后在我们的企业账号上新建一个与之前一抹一样的,这个方法行不通的。删除的时候,错误提示如下:
The App ID ‘xxxxx’.com.xxxx.xxxx appears to be in use by the App Store,so it can not be remove at this time
.然后 我问过之前的同事,也去iTunes Connect上看了,都没有看到有提交到AppStore的记录。这个不知到怎么解决,也不敢随意删除。所以打算走重签名这条路,但是带有extension的app重签名没有好的解决思路,请问,这个有什么好的方案么?或者,相关的资料也好。非常感激!!
这个我也不知道如何做到
楼主你好,我之前弄了好多次了,都是提示我的系统版本超过了10.10,规则不实用了。这种怎么解决啊,用的软件也是报这个错
这个我没遇到过,话说10.10是什么版本?mac的吗?
应该是指这个错误:
Warning: –resource-rules has been deprecated in Mac OS X >= 10.10!
这个问题解决了吗
Pingback: iOS的ipa重签名 - IT大道
楼主大哥,我重签时候总是失败,不知道是不是Mac的原因,可以加我扣扣42655965吗,我发个截图给你看看,帮我看看是什么原因。
楼主如果修改签名文件成功``是不是意味着可以二次提交到app s t ore 上面
这个没试过,不清楚
楼主,你好!
安装你的操作后签名报错,帮我看下什么原因
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate: input file:XXX.app/cf does not contain a matching architecture for specified ‘-a arm64 772912’ option
XXX.app: the codesign_allocate helper tool cannot be found or used
楼主,你好!
安装你的操作后,重签名报错,麻烦帮看下什么原因:
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate: input file: /Users/wangyongmao/Documents/a_change_package/cf/Payload/cf.app/XXX does not contain a matching architecture for specified ‘-a arm64 772912’ option
/Users/wangyongmao/Documents/a_change_package/cf/Payload/cf.app: the codesign_allocate helper tool cannot be found or used
楼主,你好!
安装你的操作后,重签名报错,麻烦帮看下什么原因:
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate: input file: /Users/wangyongmao/Documents/a_change_package/cf/Payload/cf.app/XXX does not contain a matching architecture for specified ‘-a arm64 772912’ option
/Users/wangyongmao/Documents/a_change_package/cf/Payload/cf.app: the codesign_allocate helper tool cannot be found or used
你好 我的错误:Warning: –resource-rules has been deprecated in Mac OS X >= 10.10!
entitlements.plist 和ResourceRules.plist是一回事么?这个文件可以随便命名么?跟info.plist的区别是什么?好想打包的文件里面没有这个文件?
entitlements.plist是签名专用文件,不能随便命名,与info没啥关系
现在企业证书是不是不能给Wildcard App ID添加 Distibution版的 Provisioning Profiles了?
楼主你说的embedded.mobileprovision是distribution provisionfile改名来的吗?如果是的话那这个pp文件是要带bundleid的呀,带bundleid又意味着不能跟元原ipa的bundleid一样(因为这个bundleid被别人注册了),这个问题怎么解决呢?
楼主你说的embedded.mobileprovision是distribution provisionfile改名来的吗?如果是的话那这个pp文件是要带bundleid的呀,带bundleid又意味着不能跟元原ipa的bundleid一样(因为这个bundleid被别人注册了),这个问题怎么解决呢??
这个是当时的方案,当时证书是可以使用.*的方式匹配的,所以是没问题的,现在如果无法创建.*的全匹配证书,那就只能修改ipa的bundleid了,不过这个我也不会
你好 我根据你的教程链接 看了教程 尝试修改微信(已咂壳的ipa)图片 ,重签名安装成功,但是出现闪退现象。ios8.4
请问下有方法解决么或者说楼主有新版微信的重签名方法么
现在已经不再研究重签名,实在无能为力!
哦 没关系谢谢你的回复
进行到倒数第二步时,提示 Entitlements.plist: cannot read entitlement data
证书后面的id和teamId是两个东西,现在校验的是teamId+bundleId吧
感谢分享
codesign -f -s identifier –entitlements Entitlements.plist WeChat.app
提示:Entitlements.plist: cannot read entitlement data
你好 按照你的方法 签名安装闪退 大神能帮我看看吗
博主,entitlements.plist后面的参数都是什么啊 ,能留个qq吗
这方法现在应该不好使了,过期了!
现在用IOS企业分发证书不好用了,所以打包也没有意义了。还是用openinstall吧。http://www.openinstall.io
Pingback: iOS 谁来教我.ipa的重签名 – 项目经验积累与分享
Pingback: iOS的ipa重签名 | 秀品折
请教下,是不是只有企业证书重签能正常使用?我用的开发证书,重签后闪退,目前没企业证书验证是不是打包的问题
警告:——资源的规则已经在Mac OS X > = 10.10否决!
分布:iPhone a317555512@icloud.com(94h3env3dj):没有身份的发现
请问我这是什么原因 我QQ317555512 方便加下吗 有好多问题
你好,我这边安装的时候提示失败怎么破?