链接:https://www.jianshu.com/p/6492779cb89e
來源:简书

  导致这种问题的原因是:在 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、然后把该ipa文件修改后缀名.ipa 为 .zip. 这时候就变成了一个.zip的压缩包了;

3、解压该 .zip 文件. 解压后的目录里面会有一个包含着你的 app bundle 文件的 Payload 文件夹。

4、打开终端病切换到你的app的Payload文件夹下的 .app bundle 文件夹内,形式如下:

cd path/to/Payload/your.app

5、用 find 命令定位到 Assets.car 文件 .app bundle , 形式如下:

find . -name 'Assets.car'

6、使用 assetutil 命令找到任何包含着 16-bit or P3 的资源文件, 对每个 Assets.car 之行以下命令 :

sudo xcrun --sdk iphoneos assetutil --info /Users/feng/Desktop/Payload/cocc-passengerservice-ios.app/Assets.car> ~/Desktop/Assets.json

注:这里的/path/to/a/Assets.car指的是Assets.car的路径,不要直接复制!!!使用上一步find命令的结果。

7、打开上一步生成的 /tmp/Assets.json 文件并查找包含有 “DisplayGamut": “P3” 或者相关的内容. 这段json的"Name"字段对应的值就是16位或显示的γ值为P3的资源文件名.

执行完上述的命令就能看到下边的界面了

这个是正常的

看下边的这个图片就有问题了

找到类似于上边的图片 都是有问题的 然后去你的xcode中 找到这些图片 我是直接删除了然后让UI在做图

最新文章

  1. ArcGIS Engine开发之地图基本操作(1)
  2. IOS OC数据类型
  3. 利用BeautifulSoup抓取新浪网页新闻的内容
  4. sql-char和varchar,nvarchar的区别
  5. framework&&library's root
  6. 【转】Hibernate和ibatis的比较
  7. tomcat session失效时间
  8. URL特殊字符需转义
  9. 如何用php实现简单的文件上传功能?(带图解)
  10. ASP.NET Core + Docker +Jenkins 实现持续集成
  11. NDK开发环境安装,CDT安装,Cygwin安装
  12. Qt websocket
  13. xtrabackup 2.4.3 BUG
  14. u3d 2D开发学习
  15. 编译安装centos7 php7.2 mysql5.7 nginx1.9.9
  16. 不同意义的new和delete
  17. js的继承实现方式
  18. C++中虚基类在派生类中的内存布局
  19. WEB安全第六篇--千里之外奇袭客户端:XSS和HTML注入
  20. 剑指offer-有序二维数组中的查找

热门文章

  1. Django的请求生命周期
  2. BZOJ-8-2115: [Wc2011] Xor
  3. 如何调用wasm文件?
  4. webstorm过期最新激活方法
  5. Stanford CoreNLP使用需要注意的一点
  6. BZOJ.1558.[JSOI2009]等差数列(线段树 差分)
  7. Codeforces.449D.Jzzhu and Numbers(容斥 高维前缀和)
  8. java中的lis数组转为json数据
  9. Python 列表(List)-文摘
  10. shell脚本使用技巧3--函数调用