No valid signing identity found报错的解决方案

香蕉云编原创发布日期:2026-01-07


使用hbuilderx打包的时候,报No valid signing identity found报错,意思是签名不正确,很有可能是你的证书失效了,比如证书被删除了或者证书过期了,又或者是用了不正确的证书来打包。下面给下创建ios证书的正确流程。

具体证书失效的原因,其实不需要去找,最好的方案就是全新生成私钥证书和profile文件。

由于创建ios证书需要mac电脑来生成,我们这里提供了windows也可以生成证书的工具,可以用这个工具来辅助生成,无需为了生成证书而购买一台mac电脑,工具的地址:https://www.yunedit.com/createcert

打包需要的文件有两个,一个是.p12格式的私钥证书,一个是profile文件(又叫描述文件),下面我介绍下如何使用香蕉云编+苹果开发者中心来生成这两个文件。

生产第一个文件:生成p12私钥证书的流程:

进入苹果开发者中心,登录后就进入后台了,在后台找到证书的功能,点进去创建证书,如图:

创建证书的时候,首选需要选择证书类型,这里固定选择ios distribution类型,不要选择其他的类型,其他的类型不是ios的,有些是mac系统和其他系统的,选错了以后打包就打不了。

点击下一步,创建证书的过程中,需要我们提供一个csr文件,这里就不贴图了,可以使用我上面发的工具来创建这个CSR文件。

打开香蕉云编创建证书的界面后,会看到如下的界面:

如上图,在香蕉云编使用生成csr文件的功能,生成一个csr文件,就可以拿这个csr文件到苹果开发中心继续刚才的步骤,生成一个证书。而在开发者中心生成的证书是.cer格式的。然后把开发者中心生成的.cer证书上传到香蕉云编上图框出的红色部分,就可以使用香蕉云编生成p12证书功能,生成p12证书了。顺序是在香蕉云编生成csr->在苹果开发者生成cer->在香蕉云编生成p12

通过上面的步骤,p12私钥证书的创建流程已经结束,接下来可以创建描述文件(profile文件)了。

第二个文件:生成profile文件:

生成profile文件前,需要先生成appId,也就是应用的appId,如下图,找到Identifieers

创建appid的时候,可能机会看到很多选项,你大部分情况选择默认就行,不熟悉的选项不需要勾选。记得最重要的appId名称,是这样的格式的,比如:com.baixxxx.app,或者uni.yyyyyy.app这样的格式的包名,需要跟在uniapp打包时填写的包名(APPID)一致,description随便填一个即能方便记忆的就行。

创建完appId,就可以在Identifieers的同一级菜单,找到profiles菜单,点进去profiles菜单,开始创建profile了。

创建profile的时候,可以选择两种类型,一种是正式的app store connect类型,一种是用于真机测试的ad hoc类型,你可以创建两个profile文件(两个profile文件使用同一个证书即可)。一个profile文件用于打正式包,另一个profile文件用于打测试包。

创建profile文件的时候,点下一步需要选择appId和选择证书,前面都已经创建过证书和appId了,选对就行了。比如选择证书比较容易选错,如下图:

假如你创建的是app store connect的profile文件,流程就已经完成了。

假如你创建的是ad hoc类型的profile,创建的时候需要给profile文件选择device(测试手机)。那么怎么选择测试手机呢?选择先在profiles菜单的同一级菜单,Devices菜单先添加测试设备。如下图:

添加测试手机,需要先知道测试手机的udid,而测试手机的udid,需要使用工具来获取,这里,你可以使用我们香蕉云编获取udid的工具来获取,使用手机原生浏览器,打开我们获取udid的页面,根据页面的提示,即可获取手机的udid: https://www.yunedit.com/udid


在线客服