046*:证书过期怎么办?

一、开发和发布证书作用

 

 

1、类似上边证书样式的就是Certificates(证书,包括开发、发布证书),作用 : 这.cer文件格式的证书是让开发者使用的设备(也就是你的Mac)有真机调试,发布APP的权限。

 

 

 2、类似上边证书样式的就是Provisioning Profiles(描述文件,简称PP),这.mobileprovision文件格式的配置文件是让开发者的项目(APP)能有真机调试,发布的权限。

二、各种证书的有效期

企业帐号发布证书有效期是3年,而开发证书有效期为1年,而描述文件开发发布都是只有1年有效期。

个人帐号开发证书发布证书有效期都是1年,描述文件也全是1年有效期。

三、各种证书过期后的后果

1、开发证书和发布证书:

1)企业账号以及打包上传到fir和蒲公英的ipa

名下所有app都无法打开,打开及闪退,受此影响,推送证书及描述文件均失效

2)公司/个人账号:

在苹果商店下载安装的app不受影响(无论是过期还是Revoke,甚至是开发者账号被注销,因为这个时候,对于app的签名,是通过苹果私钥直接签名的,没有使用开发者名下的私钥签名),开发者开发模式下的app无法打开及闪退,测试的推送证书失效

2、描述文件

1)企业账号以及打包上传到fir和蒲公英的ipa

如果是过期,名下所有app都无法打开,打开及闪退,有时不会立刻就反应过来,因为苹果有缓存,可以看上面的证书介绍

2)公司/个人账号:

在苹果商店下载安装的app不受影响(无论是过期还是Revoke,甚至是开发者账号被注销,因为这个时候,对于app的签名,是通过苹果私钥直接签名的,没有使用开发者名下的私钥签名),开发者开发模式下的app无法打开及闪退,测试的推送证书失效

3、推送证书

推送证书过期:

由于证书过期之后,私钥签名之后,苹果解密之后,发现证书过期无效,证书无法与苹果服务器通信,因此推送证书过期之后,无法使用此证书再次发生推送

推送证书被Revoke:

虽然证书被Revoke,推送功能将无法使用,无法连接苹果服务器(因为生成推送证书的时候,需要生成CSR,里面包含公私钥,我们如果立刻revoke,然后立刻去试的话 是生效的,可能需要苹果同步,第二天将无法使用,提示证书错误,)由此影响的关联的描述文件,如果之前下载的,那么是有效的,如果是在revoke之后下载,将是无效的

四、各种证书失效后的解决办法

1、开发或者发布证书

1.1:如果你的开发者账号是company(公司)类型或个人类型的,只要你的每年99$的开发者membership没有过期,就不会对已上架的app产生影响,只是你下次发布或者更新app就要重新生成一个distribution证书了。

1.2:如果你的开发者账号是enterprise类型(企业级)的,证书过期或被revoke了之后,那么安装过该证书打包的app的用户将无法打开该app了,开发或者发布证书过期后,他相关的描述文件也会失效,解决办法如下:

这个时候你需要到开发者中心---Certificates 目录下把过期的开发或者发布证书Revoke掉,然后生成新的开发或者发布证书,之后还需要更新描述文件,点击过期的描述文件展开详情界面----点击Edit按钮---- 选择对应的开发或者发布证书---点击Generate按钮

为了避免失效后,通过fir打包上传或企业级的APP不能用,一定要在失效之前,生成一个新的发布证书,生成对应的描述文件 ,安装到钥匙串中,在失效之前强制更新一次APP

切记不要随便revoked调你的发布证书,如果你通过fir打包上传或者企业级APP,就会闪退不能用

2、开发或者发布描述文件

一般描述文件过期的原因是 :他相关的开发或者发布证书过期,这个时候你需要到开发者中心---Certificates 目录下把过期的开发或者发布证书Revoke掉,然后生成新的开发或者发布证书,之后别慌, 只需要几步就更新描述文件,点击过期的描述文件展开详情界面----点击Edit按钮---- 选择对应的开发或者发布证书---点击Generate按钮

为了避免失效后,通过fir打包上传或企业级的APP不能用,一定要在失效之前,,生成一个新的描述文件 ,安装,在失效之前强制更新一次APP

3、推送证书过期

推送证书(生产Apple Push Services和开发APNs Development iOS)的有效期都是一年,将要过期的时候,苹果官方会发邮件提醒

过期的体现:

1、我的证书可以看到各个App的推送证书,如果过期了,显示红色X

 2、极光提示

3、AppStore 信息显示

 

解决办法:

1.官网信息点击编辑进入编辑

2:重新创建生产和开发证书

3:进入Create a CSR file 页面,直接Continue:

4:选择CSR File,这个时候还没有创建CSR File,我们需要创建之后才能提交

5:打开钥匙串,首先在我的证书中,将已过期的两个证书删除

6:创建新的CSR文件。点击菜单中钥匙串访问—>证书助理—>从证书颁发机构请求证书...

7:进入证书助理,填写信息(用户名称和邮箱随便写),请求是 选择 存储到磁盘

 8:创建好CSR文件,回到步骤4选择新创建的文件提交。点击Continue

9:将生成的证书下载下来,第一个证书完成。

 

10.回到步骤2的界面,可以看到开发证书已经存在了,重复3-9的步骤(使用同一个CSR文件即可)创建另一个生产证书

 完成之后,在过期表现中的表现已改变

11:双击下载的两个证书,把证书添加到钥匙串中

12:为了正常使用极光SDK,去极光官网重新配置两个证书。需要提供p12后缀的文件。

 

13:p12后缀文件由钥匙串中的证书导出所得 

 

 

14:这里写的密码即为极光证书密码。提交两个p12后缀文件和填写证书密码,至此过期表现中的表现2已改变 

  

完结:同时,App上推送模块就可以正常使用

为了避免推送失效,最好的解决办法,就是失效之前生成一个新的推送证书,然后把p12 文件传到极光推送上,之后再revoked掉旧的。

posted on 2020-12-27 21:34  风zk  阅读(1099)  评论(0编辑  收藏  举报

导航