刚刚更新了一个包含iPhone X LaunchImage的Cordova应用程序,现在正在进行仿真,我看到了正确大小的启动图像,然后一秒钟后再显示另一个太大并从页面扩展的图像。
我无法弄清楚为什么启动图像/启动画面会被显示两次?在设备初始化中,navigator.splashscreen
会调用hide
,然后永远不会调用show
,因此代码中不会发生这种情况。我将启动图像放在Xcode中并使用cordova-plugin-splashscreen
插件。从我假设使用Xcode或将其添加到config.xml
的文档相当于关于splashscreen遗留资产,但现在我感到困惑。这仅发生在iPhone X上,而不是iPhone 5s,6,7,8或iPad上。
答案 0 :(得分:1)
好的,所以第一次启动图像显示是系统显示的图像,第二次是启动画面插件显示的图像。通过更新到包含错误修复的cordova-plugin-splashscreen
v5.0.2解决了该问题。
答案 1 :(得分:0)
除了上述@mtpultz解决方案之外,我还发现了需要删除的旧启动画面文件,并添加了一些新的启动画面文件。
对于共享上述问题或在与此相关的Ionic应用程序上存在问题的任何人,在编译后,我在以下文件夹中发现了旧的启动画面文件:platforms/ios/myApp/Images/xcassets/LaunchImage.launchimage/
-还要检查LaunchStoryboard.imageset
文件夹并确保所有您的图片是正确的。我发现两个文件仍显示默认的cordova图标(Default-2436h.png和Default-Landscape-2436h.png)-我创建了两个具有Width / Height尺寸的新图像文件,并复制了这两个文件。现在一切正常。
答案 2 :(得分:0)
问题是您将早期隐藏的屏幕弹出,iOS更改为本机启动屏幕,一种可行的解决方案是在config.xml <preference name="SplashScreenDelay" value="100000"/>
中增加SplashScreenDelay或在您对应用程序的所有组件收费时手动隐藏启动屏幕。