iOS9.2.1 App从AppStore上下载闪退问题
首先这是小编的第一篇文章,我是一名做iOS开发的小白,出于爱好会更新发表些相关的技术文章,偶尔也会发些视频。恳请大家不要去嘲笑一个努力的人,要是做的不好请多多评论,反正我也不改。
好了!敲黑板!!说正题
是这样,前一阵我本来在开开心心的对着项目输出我的奇淫技巧,但是突然有个员工说自己的app有问题,更新版本后再一运行就莫名其妙的崩溃。这让我很惊讶,因为这不符合道理!在没法干掉那个员工的情况下,我只好直面这个bug。
经过我的真机测试,发现并没有这个问题出现。我查看了崩溃日志,发现断点处代码都不在关键点上,于是就请求了苹果的技术支持(一年就两次,多了花钱)。苹果的技术支持不愧是货真价实,回复的干脆:看文档!
哦。。。嗯?先不说文档那么一大块,还是全英文的。当然了,虽然在你们看来英文的文档根本没法看,但在我们搞开发的程序猿来说,尤其是我,那也是一脸懵逼。
于是乎我只能慢慢搜索问题,经过各种查证发现是一张图片有了问题。图片如果是16位或者P3的色域,就会在并且只在iOS 9.2.1系统下崩溃(显然这个系统是有毒的)。
发现自然就能解决,先打一个ipa包并解压,使用终端输入:cd path/Payload/XXX.app,path就是你的路径了。
接着使用find:find . -name 'Assets.car'。
接着使用 assetutil 命令导出图片的信息存储到Assets.json文件中:sudo xcrun --sdk iphoneos assetutil --info/path/to/a/Assets.car> /tmp/Assets.json 把path替换成刚才find下的结果。
打开刚才生成的Assets.json文件,查找含有”DisplayGamut” : “P3”, “Encoding” : “ARGB-16″的内容。这个对应的Name就是出现问题的图片了。
这里我建议直接让美工重新做一张图片,这样没有任何问题了,但也可以直接修改问题图片。
这样我们就不用去定位是哪个图片的问题了,或许更方便一些。
这里我们使用bash script直接处理所有图片为正确格式:
好了,这个问题到这里还是有没解决的话,就可以跟老板说苹果这个系统有问题,不是咱们的锅。
iOS9.2.1 App从AppStore上下载闪退问题的更多相关文章
- 企业版证书打包APP发布,安装后闪退问题解决。
企业版证书打包APP发布,安装后闪退问题解决. 我现在就碰到这个问题,只要项目与Swift沾上边的,都会出问题. 如果我们是直接使用开发者证书进行真机调试,那么就不会出现问题,像往常一样好.但如果我们 ...
- pointer-events/H5页面在iphone6 plus的微信上出现闪退
一.pointer-events 1.元素加上pointer-events:none后,在js中加点击事件不好使 原因:pointer-events:none关闭所有点击事件,包括js总的 解决:删掉 ...
- iOS开发-闪退问题-解决之前上架的 App 在 iOS 9 会闪退问题
最新更新:(2015.10.02) 开发环境: Delphi 10 Seattle OS X El Capitan v10.11 需使用下列 HotfixID: 30398, PAServer Hot ...
- 解决之前上架的 App 在 iOS 9 会闪退问题 (更新:已有 Hotfix)
最新更新:(2015.10.02) 开发环境: Delphi 10 Seattle OS X El Capitan v10.11 需使用下列 HotfixID: 30398, PAServer Hot ...
- 【TIP】已经上架的app在AppStore上搜不到的解决办法
相信很多人都遇到过这个问题,天天刷iTunes connect,终于发现app已经上架了,兴奋的跑过去告诉老板,老板说好,大家都装一个吧!然后大家过来问你怎么搜不到,老板看你都是一副这个表情: 这 ...
- 已经上架的app在AppStore上搜不到的解决办法
1.问题呈现 相信很多人都遇到过这个问题,天天刷iTunes connect,终于发现app已经上架了,兴奋的跑过去告诉老板,老板说好,大家都装一个吧! 这时候只能一边不慌不忙地甩锅给苹果,一边快马加 ...
- Android SDK Manager 在win8.1上的闪退问题
全新安装的Windows 8.1的系统,Android SDK,JDK都是最新的版本,但是SDK Manager打开是命令行窗口一闪而过,就再没反映了. 通过搜索,确定了一个问题就是SDK目录tool ...
- 如何获取AppStore上应用的ipa安装包
1.首先你得去下载一个Apple Configurator 2,我们通过这个工具来获取ipa包,从AppStore上下载安装你需要获取的App 2.连接手机,打开Apple Configurator ...
- APP闪退问题
1.iOS-中app启动闪退的原因 2.iOS开发-闪退问题-解决之前上架的 App 在 iOS 9 会闪退问题 3.iOS-应用闪退总结 4.iOS开发-捕获程序崩溃日志 5.iOS开发-应用崩溃日 ...
随机推荐
- Hadoop(九):Shuffle组件
重温MR整体流程 工作流程 开始执行输入(InputFormat),先对文件进行分片,然后读取数据输入到Map中. Mapper读取输入内容,解析成键值对,1行内容解析成1个键值对,每个键值对调用一次 ...
- 细数Java项目中用过的配置文件(YAML篇)
灵魂拷问:YAML,在项目中用过没?它与 properties 文件啥区别? 目前 SpringBoot.SpringCloud.Docker 等各大项目.各大组件,在使用过程中几乎都能看到 YAML ...
- Typora+PicGo+GitHub实现md自带图床效果
1 GitHub创建作为图床的仓库 1.1 在GitHub中创建一个仓库 注意仓库要是public的,不然上传的图片还是无法使用的.如果不知道怎么创建仓库,可以百度一下. 1.2 在GitHub生成一 ...
- Pytest系列(14)- 配置文件pytest.ini的详细使用
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest配置文件可以改变 ...
- 《深入理解 Java 虚拟机》读书笔记:晚期(运行期)优化
正文 在部分商用虚拟机(Sun HotSpot.IBM J9)中,Java 程序最初是通过解释器进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为"热点代码& ...
- go 中的WaitGroup
wait_group sync.WaitGroup 类型是并发安全的,也是开箱就能用的. 该类型有三个指针方法,即:Add,Done和Wait. sync.WaitGroup是一个结构体类型.其中一个 ...
- mysql的事务四个特性以及事务的四个隔离级别
一.事务四大属性 分别是原子性.一致性.隔离性.持久性. 1.原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库, ...
- Spring3.2 中 Bean 定义之基于 XML 配置方式的源码解析
Spring3.2 中 Bean 定义之基于 XML 配置方式的源码解析 本文简要介绍了基于 Spring 的 web project 的启动流程,详细分析了 Spring 框架将开发人员基于 XML ...
- C# 基础知识系列- 10 反射和泛型(二)
0. 前言 这篇文章延续<C# 基础知识系列- 5 反射和泛型>,继续介绍C#在反射所开发的功能和做的努力.上一篇文章大概介绍了一下泛型和反射的一些基本内容,主要是通过获取对象的类型,然后 ...
- ES6新特性箭头函数和常用function()对比
// 无参 var fn1 = function() {} var fn1 = () => {} // 单个参数 var fn2 = function(a) {} var fn2 = a =&g ...