IOS 从app store下载运行ios9.3以下的系统就崩溃

终于有时间写博客了,讲述一下前段时间遇到的坑,自己挖的坑。

版本发布上线后,客户反馈app运行闪退。测试没问题呀,于是我上友盟查问题,哇塞,崩溃概率好高,ios9.3以下版本会崩溃。

友盟反馈以下错误提示,完全不知道问题出在哪里。

Application received signal SIGTRAP

那就找来一部ios9.2的手机连机调试吧,装上跑起来没问题呀。

既然debug调试没问题,那我们试release调试也没问题,再试发布一个企业版本调试也没问题。。。但是从app store下载运行就奔溃。我也崩溃了。

后来想既然只有从app store下载才出现问题,难道是打包的时候出问题了?于是重新打包上传到iTunes Connection发布,没错,还是奔溃。。。

然后就上网各种查找Xcode8打包iOS9线上奔溃问题的资料,最终锁定到了P3资源文件的问题上。

图片资源文件里有16位图或者图片显示模式为P3,这是什么鬼?不知道哪张图片。


那我们接着定位问题图片。

1、打一个ipa包,改为zip格式解压,进入Payload文件夹。打开终端执行

cd /Users/Desktop/test/Payload/test.app

2、用find命令定位到Assets.car文件

find . -name 'Assets.car'

3、 使用 assetutil 命令导出图片的信息存储到Assets.json文件中

sudo xcrun --sdk iphoneos assetutil --info ./Assets.car > /tmp/Assets.json

4、 打开生成的Assets.json文件

open /tmp/Assets.json

5、查找含有”DisplayGamut” : “P3”, “Encoding” : “ARGB-16″



左图为不符合的图片信息简介


果然有一张坑爹的图不懂规矩。老脸一红,这张图是我自己P的。。。懒的让美工改了,自己动手了。真是手欠啊!!!


更换了图片,重新打包发布,ok,没毛病。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值