在iOS中,如何根据环境(dev,hom,prod)更改启动屏幕图像?

时间:2017-09-06 12:53:21

标签: ios iphone swift swift3

我有一个带图像的启动画面,到目前为止效果还不错。

但现在我有3个架构:dev,hom和prod。

我想知道如何根据构建时选择的架构更改启动屏幕图像?

修改

我想到了两个选择,但我不知道哪一个最好:

选项1:创建两个故事板并创建一个变量,以在app委托中设置正确的故事板的名称。我将在Info.plist键(Launch screen interface file base name)中使用此变量。

选项2:在Launchscreen.storyboard上创建两个场景,并根据环境以编程方式设置正确的场景。

2 个答案:

答案 0 :(得分:1)

您的第二个选项肯定不会起作用,因为您无法在LaunchScreen上执行任何代码,并且在执行任何代码之前会显示LaunchScreen(即使在AppDelegate中),因此您无法更改LaunchScreen文件在运行时。

你的第一个选择几乎是正确的。确实,一个可行的解决方案可能是为不同的启动屏幕创建几个Storyboard,但是你需要在构建脚本中调整Info.plist文件,你也不能在运行时执行此操作。请注意,我实际上并没有测试过这种方法,但理论上它应该可行。

答案 1 :(得分:1)

使用目标,为每个环境添加目标,每个目标都有自己的info.plist,您只需为每个目标设置不同的启动屏幕故事板,在相关的info.plist中设置一次,您就可以选择任何目标并运行。