此类问题网上有很多解答,但是这些答案都没有解决我的问题,记录一下我解决的方案。
引起这个问题,大概有如下原因 :
1.证书选择错误、检查证书是否选择正确;
- 请检查工程targets-build Phases-Embed frameworks 下面第三方库有没有勾选Code sign on copy,因为有些第三方库需要用到证书;
3.添加依赖库后把Embed改成了“Embed & Sign”或者“Embed Without Signing”;
总之,网上大多数是说证书问题,凡是证书问题,多半都是钥匙串里面证书多个重复,而没有覆盖,需要删除之前失效的证书。但是我确定我主工程证书没有问题,那么我就想起来我项目中新加的一个Siri扩展,仔细检查,果然是Siri扩展的证书不对,导致项目跑不起来。
所以,如果你们项目中有,Siri扩展,通知扩展等等一些扩展文件,请仔细检查扩展文件的bundleID是否正确,有的时候主工程的bundleID没有问题,是因为扩展的bundleID造成 Unable to install "XXXDemo"
错误的。