首页 > 代码库 > 设置Images.xcassets后启动仍旧黑屏的问题

设置Images.xcassets后启动仍旧黑屏的问题

换了XCode6之后,发现以前写Icon-76.png这样很麻烦,就使用了Image.xcassets,公司所有测试机跑了一下,发现没什么问题。唯独有一台设置有问题,iphone5 ios6.0系统,游戏启动后黑屏。而且断点发现游戏获取的屏幕大小变为320x480了,实际应该是640x1136。因为之前打包是可以的,可以我只好把之前的资源打包的时候再添加进去,但总觉得很麻烦。因为不同的越狱不同它可能要求你使用的Launch Image是不一样的,替换来替换去的很繁琐

 

之前只加了4张Launch Image,兼容iphone && ipad,我就把4张图片一张一张的试,结果发现添加了其中一张时,游戏不再黑屏了,图片名称叫“Default-Landscape@2x-568h@2x.png”,见过Default-568h@2x.png的,但没见过前面那个,很奇怪不是吗?而且我查看了越狱渠道提供的demo,人家也是正常的,图片名称上也没什么特殊处理,似乎陷入一种无法理解的境地了,why?…

 

然后我就把越狱渠道提供的demo配置与游戏打包的开发配置,一项一项对比,发现了这个诡异的配置:

技术分享

Info中指定了默认的Launch image,那自然的iphone5就会使用Default-Landscape@2x-568h@2x.png,这个很怪异的图片名称了。解决方法就是删除这个属性,一切就清净了

 

iphone(Portrait) Launch Screen的规格:

none Default.png (320 x 480) iPhone 3GS

Default@2x.png (640 x 960)就是iphone4/4s使用的

Default-568h@2x.png  (640x 1136) iphone5/5s

Default-667h@2x.png  (750 x 1334) iphone6

Default-736h@3x.png  (1242 x 2208) iphone6 plus

根据横(Landscape)、竖(Portrait)屏iPad有如下几种(主要区别在于是否为Retina屏):

Default-Portrait.png (768 x 1024)

Default-Portrait@2x.png (1536 x 2048)

Default-Landscape.png (1024 x 768)

Default-Landscape@2x.png  (2048 x 1536)

如果有导航显示,那么相应的“高度”需要减少40,如768 x 1004

技术分享 

 

虽然,使用Image.xcassets之后,对于图片没有什么要求(反正都在content.json中)但为了管理方便,我觉得还是使用之前约定的名称为宜。

 

参考链接:

[1] http://stackoverflow.com/questions/3973981/how-to-correctly-name-all-those-launch-images-for-an-universal-app/27108377#27108377

[2] IOS Sample Launch Screen File

[3] Default (Launch) Image Sizes for iPhone & iPad

 

关于App Icon的设置,可以参考之前的文章:IOS应用提交所需的ICON

设置Images.xcassets后启动仍旧黑屏的问题