![](https://s5-media.51cto.com/ost/pc/static/noavatar.gif)
关于ipa重签名及分发全过程的问题求助
求助内容:
各位大佬好,我看到有p12证书共享。便尝试着给ipa重签名,但是过程并不顺利,遇到的问题试了很多种方法还是无法成功安装,所以我腆着脸想请教一下:
证书是Distribution类型的发布证书,里面有UUID,应该是用来进行Ad Hoc 真机测试的(我不知道判断是否正确)。
种证书指定UUID,我们在进行重签名的时候换成自己的测试机,ipa能安装吗?(因为测试重签名了好几个ipa,不知道是什么地方出了问题。我通过网页分发下载后都是灰色的,显示无法安装,请稍后再试。。)
另外这张证书中的cert.mobileprovision描述文件与ipa里的embedded.mobileprovision是不一样的,我也没得开发者账号进行重新生成。所以就想要不把重签名ipa中的info.plist文件改成这张证书里的App ID信息。因为在info.plist中bundle ID一般是com.xxx.xxx与这张证书APP ID: 3F2J..com.xx.xx在结构上还是有点不同的,在修改的时候 3F2J..需要加上去吗?(除了bundle ID外,不知道其它地方需不需要改,因为App Name也与info.plist是不一样的,需要改吗?)
我重新把所有需要签名的地方都签了,检查也没啥问题。这是重签名的演示命令:
然后上传到https服务器上,再写了一个run.plist分发的文件与已重签名的ipa放在一起以供下载测试。
下载的时候用的 itms-services://?action=download-manifest&url=https://www.xxx.com/run.plist命令在Safari浏览器进行。
但是下载的时候并没有遇到需要信任证书的步骤,而是直接下载完,点击却无法安装。
例如这种步骤:
因为是第一次操作ipa签名,我只能参考以往发生过的经验,无法判断当下分发的情况,在下载ipa时没有信任企业签名这一步骤是否正常。
另外,我担心是自己分发时写的run.plist产生的错误导致无法安装,又购买了某平台超级签名进行重签,因为重签名后的ipa托管在别人平台,省去了我需要再找教程,判断ipa无法安装是否由run.plist文件代码的错误。
可事实是,下载了超级签名的证书并信任它,然后点击安装,ipa依旧提示无法安装。
回到主题,各位大佬请问我在重签名中到底是什么情况引起的无法安装呢?
1、首先我感觉是证书的问题,因为UUID有设备号码了,然后我花钱买超级签名。但为什么也不能安装呢?
2、证书中的.mobileprovision描述文件与ipa中的embedded.mobileprovision不一样,我用证书中的替换了它们。但因为我没有开发者账号,无法对证书对应的.mobileprovision描述文件进行修改(尝试强制修改,改动的描述文件无法对ipa重签名)直接用证书中的描述文件可行吗?
3、如果直接用证书中的.mobileprovision描述文件,那么就要对ipa中的info.plist进行修改,但是具体需要改动哪些呢?(我依然对bundle ID需不需要加3F2J..感到困惑)
4、网页分发的run.plist是不是也有问题?它具体应该怎么写?是跟info.plist一样,还是跟从.mobileprovision描述文件提取的entitlements.plist文件保持一样?
期望得到答复,万分感谢!
![](https://s5-media.51cto.com/ost/pc/static/noavatar.gif)