9.3系统以下的手机,从AppStore下载的App莫名崩溃
2017-11-15 17:00
405 查看
从AppStore下载的App,出现莫名崩溃的原因,第三方抓Bug也抓不到,后来终于在同行的帖子中也看到这种问题,所以,以下是解决办法:
原理:在 Xcode 8 中,当你资源文件中“含有16位图”或者“图片显示模式γ值为‘P3’”且iOS targets设定为iOS 9.3以下就会出现这个问题。如果你的app需要支持广色域显示的话,那你必须得把target设置成iOS 9.3+,相反,如果你的app不需要支持广色域且你想兼容 iOS 9.3 以下的系统,你就得把所有的16位的或者显示模式为‘P3’图片全都替换成8位模式的SRGB颜色的图片。
步骤:
1.打包ipa文件
2.用终端找到app路径,cd,拖入app文件
3.用 find 命令定位到 Assets.car 文件,形式如下:
find . -name ‘Assets.car’
(注意:显示包内容,cd拖入Assets.car文件,显示找不到路径)
4.使用 assetutil 命令找到任何包含着 16-bit or P3 的资源文件, 对每个 Assets.car 之行以下命令 :
sudo xcrun –sdk iphoneos assetutil –info/path/to/a/Assets.car > /tmp/Assets.json
(sudo xcrun –sdk iphoneos assetutil –info Assets.car > /tmp/Assets.json 赋值这个)
注:这里的/path/to/a/Assets.car指的是Assets.car的路径,不要直接复制!!!使用上一步find命令的结果。
5.打开上一步生成的 /tmp/Assets.json 文件并查找包含有 “DisplayGamut”: “P3” 、“BitsPerComponent” : “8”或者相关的内容。 这段json的”Name”字段对应的值就是16位或显示的γ值为P3的资源文件名,找到删除或者替换。
以下是完成图片,再提醒,注意这个info /path/to/a/Assets.car,按照我的终端命令来就可以的了。希望各位开发者能够轻松解决这个问题。
参考文档:http://www.jianshu.com/p/4bc0c5b3b597
原理:在 Xcode 8 中,当你资源文件中“含有16位图”或者“图片显示模式γ值为‘P3’”且iOS targets设定为iOS 9.3以下就会出现这个问题。如果你的app需要支持广色域显示的话,那你必须得把target设置成iOS 9.3+,相反,如果你的app不需要支持广色域且你想兼容 iOS 9.3 以下的系统,你就得把所有的16位的或者显示模式为‘P3’图片全都替换成8位模式的SRGB颜色的图片。
步骤:
1.打包ipa文件
2.用终端找到app路径,cd,拖入app文件
3.用 find 命令定位到 Assets.car 文件,形式如下:
find . -name ‘Assets.car’
(注意:显示包内容,cd拖入Assets.car文件,显示找不到路径)
4.使用 assetutil 命令找到任何包含着 16-bit or P3 的资源文件, 对每个 Assets.car 之行以下命令 :
sudo xcrun –sdk iphoneos assetutil –info/path/to/a/Assets.car > /tmp/Assets.json
(sudo xcrun –sdk iphoneos assetutil –info Assets.car > /tmp/Assets.json 赋值这个)
注:这里的/path/to/a/Assets.car指的是Assets.car的路径,不要直接复制!!!使用上一步find命令的结果。
5.打开上一步生成的 /tmp/Assets.json 文件并查找包含有 “DisplayGamut”: “P3” 、“BitsPerComponent” : “8”或者相关的内容。 这段json的”Name”字段对应的值就是16位或显示的γ值为P3的资源文件名,找到删除或者替换。
以下是完成图片,再提醒,注意这个info /path/to/a/Assets.car,按照我的终端命令来就可以的了。希望各位开发者能够轻松解决这个问题。
参考文档:http://www.jianshu.com/p/4bc0c5b3b597
相关文章推荐
- appstore版本app随机崩溃,崩溃系统版本在9.3以下问题
- app从appstore上下载下来后崩溃。但是我手机曾用xcode装过,从appstore上下载就没有问题
- 【转】苹果IOS4.3以下系统不升级固件骗过appstore进行下载和更新的办法
- 用苹果手机扫描自动打开Appstore页面下载APP,用安卓手机扫码自动打开应用页面下载APP
- IOS 从app store下载运行ios9.3以下的系统就崩溃
- 怎么制作生成苹果手机app应用的下载二维码图片
- 点击导航按钮后进入百度地图app,如果手机没有安装的话,就跳转到AppStore
- 通过手机浏览器打开APP或者跳转到下载页面.md
- 手机应用(App)推广服务-App收录,App推广,App评测,App下载,App搜索-搜应用网(www.souapp.com)
- 跳过微信屏蔽APP扫描以及识别不同系统的手机
- 微信扫描下载提示以及js判断用户手机系统
- 【转载】 扫描二维码自动识别手机APP下载地址
- 扫描二维码自动识别手机APP下载地址
- 【技巧:善用热修复补丁 系统崩溃轻松解决】乡巴佬下载
- 从微信跳转到appstore下载App
- 扫描二维码自动识别手机APP下载地址
- 扫描二维码自动识别手机APP下载地址
- APP跳到AppStore 下载的实现
- 微信小程序获取手机系统信息的方法【附源码下载】