美文网首页
关于iOS 中App 证书更新的一些事情

关于iOS 中App 证书更新的一些事情

作者: super_2e20 | 来源:发表于2019-12-05 14:09 被阅读0次

    iOS 中线上的App 可以分为企业版本和App Store版本

    企业版的更新

    • 现象:iOS企业版证书到期导致APP 无法访问,也就是闪退现象

    • 原因:用企业版帐号签名的APP,它的provisioning profile(预配置文件)有效期是1年;

    • 敲黑板 :我还注意到一个问题,provisioning profile是打包进ipa的,它在里面写明了APP使用的有效期(创建时间,过期时间和使用期限),至于具体是什么时间,与打包日期有关,与创建这个provisioning profile的时间有关。
      对于provisioning profile已经过期的APP,再次打包时,选择cerficate后,provisioning profile中的时间就是当前打包的时间;但是对于那些provisioning profile还没有过期的APP,再次打包还是使用旧的provisioning profile,creationTime(ExpirationDate)还是之前创建或者update时的时间。这个过期时间有可能与在member center上这个APP中查看到的时间不一致(有可能是生成了新的provisioning profile后,并没有安装到Xcode中)

      • 还有一种情况,如果APP没有特殊的capabilities,那么就可以使用通用的provisioning profile,这个通常是XC:*,它的时间也是一年有效期。
      • 因此,如果不能十分确定每一个打出来的ipa的有效期(过期时间),而又需要关注它具体什么时候需要强制用户update,最好是在要发行的ipa生成之后,查看其中的provisioning profile。具体方法
    1.解压ipa:右键把.ipa包改成.zip 然后解压;
    2.进入解压后生成的Payload目录;
    3右键app->显示包内容
    4.找到文件:embedded.mobileprovision
    5.用查看文本文件的工具打开这个文件,并转换编码为UTF-8
    
    
    • 解决办法:必须在到期之前做一下工作(体验好一点就是,前一个版本就做好更新)

      A. 更新企业证书 描述文件

        1.首先登陆Apple Developer官网开发者账号登陆。登录网址[https://developer.apple.com/](https://developer.apple.com/)点击Account输入账号登录
        2.点击Certificates, IDs & Profiles
        3. 点击Provisioning Profile 下面的ALL
        4.找到即将过期的Provisioning Profile,点击Edit
        5.点击Generate
        6.下载更新的Provisioning Profile文件,重新打包即可
        7.安装下载好的Provisioning Profile文件
    
    

    敲黑板:对于还没过期的证书,如果选择Automatically manage signing 打包,Xcode只会用旧的provisioning profile,creationTime(ExpirationDate)还是之前创建或者update时的时间 进行打包

    image

    只能用指定描述文件的打包方式才可以

    image

    B. 更新推送证书
    推送证书都是独立申请的 的证书都是开了推送权限而已
    那么理论上是推送证书过期用户那边会爆一个aps证书的错误 可是官网上的推送证书是可以多个的
    因此最保险的做法是 先添加一个推送证书和原来的共存 这时候上新版本 原来的过期以后删除掉那个证书

      1.删除MAC上钥匙串访问中对应的推送证书。
      2.登录苹果开发者后台,删除已过期推送证书(mac上删除之后可能会消失),并下安装到Mac钥匙串访问中。 
      3.然后为对应App ID生成新的推送生产证书,点击App IDs 
       找到rider.app,然后点击编辑按钮    
      4.进入如下页面,找到create certificate,点击该按钮
      5.点击continue
      6.选择本地的CSR证书提交
      7.生成本地CSR文件步骤,找到钥匙串,点击屏幕左上角的”钥匙串访问”->”证书助理”->”从证书颁发机构请求证书”
      8.点击下载
      9.点击下载后找到我们刚才下载的.cer文件,直接双击
      10.右击我们的证书,选择“导出
      11.选择我们需要保存的地方,要注意下面的文件格式选择“.p12”格式的
      12.进去推送平台,找到你的app,重新上传就可以
    
    
    • C. 重新配置文件并打包

    喝杯茶先,接下就讲讲App Store 相关的证书更新

    证书过期是不影响App Store,已经安装的可以正常使用,也还可以从App Store下载。(除非你的开发者账号过期了,那得续费了)
    过期的话,直接revork过期的证书,然后重新生成证书和Provisioning Profile文件,打包重新上架即可!

    影响到是推送的证书而已,推送的制作还是跟企业版版推送证书过期一样,重新制作,上传到对应的推送平台即可。

    相关文章

      网友评论

          本文标题:关于iOS 中App 证书更新的一些事情

          本文链接:https://www.haomeiwen.com/subject/nnpdgctx.html