1.前言
鉴于苹果爸爸在今年的4月份发布的新的审核标准,所有的App必须采用storyboard来作为启动页,否则将面临审核被拒的风险。
原文链接如下:https://developer.apple.com/news/?id=01132020b.
所以,下面开始尝试使用新的方式来替换现有的LaunchImage方案。
2.开始配置
2.1 配置LaunchScreen作为启动项
检查项目配置Targets->General->App Icons and Launch Images
2.2 配置LaunchScreen.storyboard
在storyboard上添加imageView并取消Safe Area适配勾选,重新添加约束使其占满整个屏幕.(这里把底色调成红色,方便检查App启动时是否填满)
2.3 在Assets目录下新建image集合
此时发现并没有指定各种型号尺寸,这时需要我们修改Contents.json文件来达到和新建LaunchImage一样的效果,具体内容格式如下:
"images" : [
{
"idiom" : "iphone",
"subtype" : "retina4",
"scale" : "1x"
},
{
"idiom" : "iphone",
"filename" : "640×960.png",
"subtype" : "retina4",
"scale" : "2x"
},
{
"idiom" : "iphone",
"filename" : "640×1136.png",
"subtype" : "retina4",
"scale" : "3x"
},
{
"idiom" : "iphone",
"filename" : "1242×2208.png",
"subtype" : "736h",
"scale" : "3x"
},
{
"idiom" : "iphone",
"filename" : "750×1334.png",
"subtype" : "667h",
"scale" : "2x"
},
{
"idiom" : "iphone",
"filename" : "1125x2436.png",
"subtype" : "2436h",
"scale" : "3x"
},
{
"idiom" : "iphone",
"filename" : "1242×2688.png",
"subtype" : "2688h",
"scale" : "3x"
},
{
"idiom" : "iphone",
"filename" : "828×1792.png",
"subtype" : "1792h",
"scale" : "2x"
},
{
"idiom" : "ipad",
"filename" : "768x1024.png",
"scale" : "1x"
},
{
"idiom" : "ipad",
"filename" : "1536x2048.png",
"scale" : "2x"
}
]
这里解释一下,这个格式并不是瞎造而来,而是根据自建LaunchImage生成的Content.json照搬而来(换汤不换药)。改写之后Image集合变成了我们熟悉的样子,如下图:
2.4 检查Build Setting下配置
如果是LaunchImage,则需要删除。新建项目默认为空。这里并不是非必须要修改的。只要前面几步正确并成功显示出来即可,其实这步可以忽略。
这里暂时只考虑了竖屏下的启动图,另外启动图强制竖屏还需要加点如下配置
3.启动图强制竖屏
如果仅仅只需要启动时强制竖屏,而App整体内容不强制还需要在AppDelegate.m添加如下代码:
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
return UIInterfaceOrientationMaskAllButUpsideDown;
}
感谢各位大佬们,欢迎点赞。