Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Cordova启动屏幕在异步请求期间挂起_Javascript_Jquery Mobile_Cordova - Fatal编程技术网

Javascript Cordova启动屏幕在异步请求期间挂起

Javascript Cordova启动屏幕在异步请求期间挂起,javascript,jquery-mobile,cordova,Javascript,Jquery Mobile,Cordova,我正在构建一个Cordova应用程序,我们实际上已经完成了,除了这个应用程序在特定条件下表现不佳。在这种情况下,会进行一系列异步ajax调用(在收到响应时大约15秒)。这些调用应在页面已加载和显示后进行。因此,它们是在登录页的onpageshow功能中生成的。问题是Cordova启动屏幕会一直显示到通话结束。我现在唯一的理论是,在网络安静之前,Cordova不会停止启动屏幕。有人知道我如何让Cordova忽略这些服务器呼叫吗?我试图在deviceready上调用cordova.exec(null

我正在构建一个Cordova应用程序,我们实际上已经完成了,除了这个应用程序在特定条件下表现不佳。在这种情况下,会进行一系列异步ajax调用(在收到响应时大约15秒)。这些调用应在页面已加载和显示后进行。因此,它们是在登录页的onpageshow功能中生成的。问题是Cordova启动屏幕会一直显示到通话结束。我现在唯一的理论是,在网络安静之前,Cordova不会停止启动屏幕。有人知道我如何让Cordova忽略这些服务器呼叫吗?我试图在deviceready上调用
cordova.exec(null,null,“SplashScreen”,“hide”,[])
,但这似乎并没有让它消失。如果相关的话,当已经在应用程序中调用时,同样的服务器调用可以异步运行,而用户并不明智。问题似乎完全在于应用程序加载


提前感谢您提供的任何帮助或想法。

如果您在收到“deviceready”事件之前拨打AJAX电话,请联系我们 可能正在从的本机端延迟onPageFinished事件
安卓尝试将AJAX调用放入deviceready事件处理程序。

我们通过在启动异步请求的函数调用上设置1秒超时来解决此问题。我不会接受这个答案,因为这更像是一个解决方案,而不是一个解决方案。从我花在这个问题上的时间来看,我所能说的就是Cordova似乎在删除启动屏幕之前等待javascript空闲。由于异步调用是javascript自然空闲之前的最后一次调用,因此对其设置1秒超时似乎是可行的。奇怪的是,由于这是一个异步调用,javascript应该在调用之后直接闲置。也许科尔多瓦也在等待网络安静下来。这只是猜测,但希望它能为未来的读者提供一些解决问题的思路