现象:之前正常用了,近1年的一个iOS的app,观致集客管家,突然用户在今天20180901,打不开了,一打开就闪退,不知道何故。
同事自己的iPhone去测试,也是同样现象:一打开就闪退。
现在需要去想办法找原因。
并且最近也没有发布新版,没发新包。
且Android版本还是正常使用的。
对于大面积的突然不能使用,感觉肯定和苹果官方有关系。比如突然变更了什么政策?
然后开始怀疑,今天0901,不会是苹果强制app全部都要使用https,后者其他什么类似的政策导致不能用的?
去搜https:
ios 闪退 强制https
苹果强制使用HTTPS传输后APP开发者必须知道的事 – 腾讯WeTest
倒计时10天,苹果iOS强制HTTPS迫在眉睫 – SSL证书 – SegmentFault 思否
强制使用https,是早在:20170101就开始了,不是现在。
Xcode7打包,iOS9真机闪退,如何解决? – IOS – 伯乐在线
iOS 企业证书过期填坑记 – 个人文章 – SegmentFault 思否
看到“我们就想到了是不是反馈闪退的客户使用的 App 证书或描述文件出问题了,因此立马登陆苹果开发者后台,登陆后发现果然是几个客户使用的证书,今天就过期了。那是不是证书过期导致闪退的呢?原生开发人员,马上更新一下证书,打了个包进行验证。果然,用新的证书打出来的包,就能正常使用,不会出现闪退了。网上找了相关的资料,也很多小伙伴遇到同样的问题 —— “企业版证书过期,App 出现闪退”。问题是已经定位了,但客户那边怎么解决呢?客户一打开我们的 App 就立马闪退了,没有办法进行强制更新。此后,在网上绕了一大圈,看了很多文章,发现我们最终的方案,只能重新打包让用户重装。”
然后去登录苹果开发者后台,看到其他证书都是2019年才过期,但是有个是2018年8月31过期的,但是却是Development开发环境,而不是此处app对应的生产环境:
后记:过了会,再去看,结果就找不到这个了。
另外看到了,本身这个企业版的账号,快要过期,需要尽快去续费了:
再去研究,发现是:
Provisioning Profile中:有很多Expired的
其中有个Active的:
但是进去却看到,里面用到的证书是过期日期是昨天:
<code>Name: XC iOS: com.x.y Type: iOS UniversalDistribution App ID: xxxApp (com.x.y) Certificates: 1 total Devices: 0 total Enabled Services: Game Center, In-App Purchase, Push Notifications Status: Active Expires: Aug 31, 2018 </code>
所以现在是:
【总结】
确定了是由于之前发布的生产环境版本的iOS的app中的证书过期了,导致客户无法使用了。
吐槽:貌似苹果官方对于要过期的证书,也不发邮件的?(还是发了,但是我此处实际上没有账号所有者的邮箱,不知道实际上是发了邮件的?)
解决办法:
只能去重新生成新证书,重新打包和发布到fir.im上,通知用户重新下载和安装新版本。
转载请注明:在路上 » 【已解决】某iOS的app大面积发生问题一打开就闪退