Javascript 尽管脚本正在运行,但仍在加载PhoneGap

Javascript 尽管脚本正在运行,但仍在加载PhoneGap,javascript,android,cordova,loading,Javascript,Android,Cordova,Loading,我正在为Android开发一个相当大的PhoneGap 2.8版应用程序。我似乎无法解决甚至无法理解为什么会发生这样的问题,现将其描述如下。当我启动应用程序时,最初会显示一个白色屏幕,这完全没问题,因为我不知道启动cordova需要一两分钟。我在项目中添加了一个插件,当用户单击“主页”视图中的“后退”按钮时,该插件会将应用程序置于后台。我可以看到我的应用程序仍然在任务管理器中运行,这一切都很好。如果我点击该应用程序将其置于前台,该应用程序将返回前台,但会在白屏上观看约3秒钟,然后呈现我的视图。我

我正在为Android开发一个相当大的PhoneGap 2.8版应用程序。我似乎无法解决甚至无法理解为什么会发生这样的问题,现将其描述如下。当我启动应用程序时,最初会显示一个白色屏幕,这完全没问题,因为我不知道启动cordova需要一两分钟。我在项目中添加了一个插件,当用户单击“主页”视图中的“后退”按钮时,该插件会将应用程序置于后台。我可以看到我的应用程序仍然在任务管理器中运行,这一切都很好。如果我点击该应用程序将其置于前台,该应用程序将返回前台,但会在白屏上观看约3秒钟,然后呈现我的视图。我想知道是否有任何方法可以加快正在进行的任何过程。我注意到,如果我的应用程序没有安装APK,而是在调试模式下由IDE运行(在这种情况下,它会像任何其他普通应用程序一样立即运行),则不会发生这种情况,但如果我单击应用程序菜单中的应用程序图标,这种情况仍然存在

我知道在空白屏幕消失之前,DeVeCeRead事件被触发了。我知道一些html被添加到DOM树中。当白色屏幕消失时,甚至我的ajax请求也会返回,屏幕上会显示更多数据。我知道,不管是什么,这种效果并不是因为我的脚本被加载了。 我怀疑这是由于Phonegap花了一些时间来恢复它的活动,或者WebView来恢复(如果这有意义的话)

我已经在不同的物理设备(Galaxy S2和S3、HTC One X)上测试过了。 还有很多优化工作要做(内存在某处泄漏,而且旧款手机(如HTC One V)似乎存在很多性能问题)

我试图在白屏打开时显示Splashscreen,但很难估计何时应该隐藏它(javascript似乎与白屏异步运行)

也许有人会很友好地解释是什么导致出现白色屏幕,以及可以采取什么措施来解决这个问题

非常感谢,
Erich

您可以将启动屏幕设置为长时间显示,使其大于最慢设备上的最高加载时间,然后在您到达设备Ready时从javascript中删除启动屏幕。这不会有帮助,就像我说的,屏幕是白色的,尽管应该显示html,javascript已在运行,并且onDeviceReady已触发。