为了账号安全,请及时绑定邮箱和手机立即绑定

iOS-iOS9系统SEGV_ACCERR问题处理【v3.6.3的一些bug修复】

标签:
iOS

前言

最近APP不断地更新版本,却发现一些未知的错误导致崩溃,我把能测出来的错误,全部修复了,因为项目里集成了腾讯Bugly,看了下后台的崩溃,依旧千篇一律啊,然后就纠结了,很多SEGV_ACCERR的错误问题,看了下机型统计,98%的崩溃来自于iOS9系统;还有一些适配时iPad出现的错误,当然iPad错误很明显;

iOS9 SEGV_ACCERR问题处理


1、打包app并导出ipa。

2、将导出的ipa文件后缀名改为.zip。

3、解压该zip文件,解压后有一个Payload文件夹,该文件夹中是你的app bundle。

4、打开终端,定位到该app bundle。命令如下:cd path/Payload/xxx.app

5、使用find命令查找到Assets.car文件。命令为:find . -name 'Assets.car'

6、使用assetutil命令找到任何包含着16-bit或者P3的资源文件。对上一步找出的每个Assets.car执行如下命令:

 sudo xcrun --sdk iphoneos assetutil --info /path/Payload/xxx.app/Assets.car > /tmp/Assets.json

 7、第6步里面有两个路径,第一个路径/path/Assets.car不要照抄,替换为第五步中查找出的路径。

8、使用open命令打开第六步生成的Assets.json。命令为:open /tmp/Assets.json

9、在第7步打开的文件中查找P3字段,对应的Name字段即为该资源的名称,删除相应资源,或者修改文件格式即可。

在删除了含有伽马值 P3的资源图片以后,这个问题几乎没有了!

 

注意:如果刚开始发现类似如下图名字为;ZZZZPackedAsset-*.0.1-gamut1的P3图,这个直接忽略,在修改完发现的项目中的图片后,这个名字的P3图自动会没有的!

 

 

跳坑:我发现的这些图标,都是在阿里矢量图标库下载的图标......


 

iPad适配问题【UIAlertController】

/**
 此处为适配iPad*/if ([alertVc respondsToSelector:@selector(popoverPresentationController)]) {
     alertVc.popoverPresentationController.sourceView = self.view; //必须加
     alertVc.popoverPresentationController.sourceRect = CGRectMake(0, Scr_Height, Scr_Width, Scr_Height);
 }

 

作者:macro小K
出处:http://www.cnblogs.com/wangkejia/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,请在文章页面明显位置给出原文连接。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消