昨天js前端采用HBuilderX在mac电脑打包iOS应用时报签名失败。打开证书目录,双击导入证书还是报错。
HBuilderX版本是3.1.18.20210609。
比对了我的正常苹果电脑钥匙串发现没有左边的登录那一项。我真奇怪了。删除证书重新双击导入证书重起电脑还是报错。第一天试过各种方法,10次免费次数满了还是没有好。只能改日战了。我们程序猿的优良品质就是不服输的精神,没有我们搞不定的技术问题。
第二日又试了4次然后还是那样半死不活。后来双击Apple Worldwide Developer Relations Certification Authority打开了它的详情,然后点开了证书的信任。想起来了上次是使用此证书时选择了使用系统默认,而出问题的电脑上选择的是始终信任。赶紧把它选择为使用系统默认,下面的那些协议等全部变成未指定。关闭证书详情窗口,终于在左上口出现了登录菜单。然后删除该证书,点击登录然后把那三个证书拖入它右侧的证书窗口导入证书,若登录昨天显示锁标志显示没有打开需要输入电脑密码才能打开锁并导入。确定这三个证书的信任都选择的使用系统默认,下面的协议也是自动选的未制定。
然后再打包成功。
问题分析:
1.证书可能被破坏或过期;
2.证书的信任选项选择了始终信任;
3.双击导入的证书都是导入了上一次选择的目录下,如你上次选择的是系统证书下。一定要保证导入的是登录证书下。
其中xcode报no identity found Command CodeSign failed with a nonzero exit code错误也是通过该方法解决的。
1.若出现左上角没有出现登录按钮。注意一定要出现登录才能继续解决问题,没有看到登录按钮,就没有办法解决问题。
点击系统选择Developer ID Certification Authority证书。
2.点击证书的信任属性,选择始终信任会弹出输入密码(有指纹的电脑市要求指纹解锁)。退出钥匙串(不是关闭钥匙串显示窗口),若不会退出钥匙串就重启电脑。那样就能看到钥匙串左上角登录按钮了。
3.重启电脑后选择系统,把原来的Developer ID Certification Authority和Apple Worldwide Developer Relations Certification 等三个证书删除。
4.然后选择登录,把Developer ID Certification Authority和Apple Worldwide Developer Relations Certification 等三个证书拖入右边证书窗口,若需要输入电脑密码就输入。
5.点击Developer ID Certification Authority和Apple Worldwide Developer Relations Certification 等三个证书选择信任属性,选择使用系统默认。再试就ok了。
正确的证书配置如上。
《HBuilderX3.0.7使用mac打包ios应用提示苹果根证书没有安装》
《no identity found Command CodeSign failed with a nonzero exit code》