Phonegap应用程序过快地隐藏了启动画面

时间:2014-05-09 10:36:48

标签: android ios jquery-mobile cordova

我正在开发一个多平台的Phonegap应用程序,并使用Phonegap Build服务构建它并将其加载到设备上。我已经关注文档并在线进行了大量搜索,但仍然遇到了启动画面问题。该应用程序启动并显示启动画面约1秒钟,然后有一个白色闪光灯,偶尔在页面正确加载之前还有一些没有样式的html。我试图使启动屏幕持续约4秒,然后正确显示初始页面没有这些恼人的闪光 - 他们对用户体验有这样的负面影响,并使其真正感觉不像移动应用程序。 我无法获得config.xml文件的任何建议元素来指定启动画面延迟。

我已经在iPad 2,iPhone 4s和最新的谷歌Nexus上进行了测试,所有3款设备都存在这个问题,iPhone是最慢的,Nexus显示速度非常快,但仍然是闪光灯。

我正在使用最新版本的Phonegap Build,以及用于UI和页面转换的jQuery mobile,所以我想知道这是否与它有关。

非常感谢任何帮助!

5 个答案:

答案 0 :(得分:2)

您可以在config.xml

中尝试使用它
<preference name="SplashScreen" value="splash" />
<preference name="SplashScreenDelay" value="10000" />
<preference name="AutoHideSplashScreen" value="false" />

当你想隐藏时,在.js文件中

navigator.splashscreen.hide();

答案 1 :(得分:2)

只是添加其他人放在这里的内容,是的,将以下内容放在config.xml中,

<preference name="SplashScreen" value="splash" />
<preference name="SplashScreenDelay" value="10000" />
<preference name="AutoHideSplashScreen" value="false" />

并致电

navigator.splashscreen.hide();

当你准备隐藏你的闪屏时。但请确保您已添加了splashscreen插件:

cordova plugin add cordova-plugin-splashscreen

因为启动画面将显示(至少在iOS上,不是100%确定如果没有插件在其他平台上使用启动画面)没有它,但你无法控制持续时间,或者没有插件就隐藏它。

答案 2 :(得分:1)

试试这个Android:

SplashScreenDelay(以毫秒为单位的数字,默认为3000):初始屏幕图像显示的时间。

<preference name="SplashScreenDelay" value="10000"/> 

<preference>文件中设置此res--> xml -->config.xml

来源链接here.

答案 3 :(得分:0)

对我有用的解决方案是从Build的WWW文件夹本地加载HTML并从那里调用我的所有其他页面。我请你检查j Query与phonegap的兼容性。始终建议使用纯Java脚本,因为它们加载速度更快,不包含库。

答案 4 :(得分:0)

您可以通过推迟

来解决此问题
navigator.splashscreen.hide();

直到几个动画帧进入应用程序生活(虽然这取决于你的启动/渲染情况)

如果您使用的是fastdom,则可能会出现以下情况,但根据您的使用情况,您可能需要更大的延期

fastdom.defer(2, function () {
    navigator.splashscreen.hide();
});