Cordova 屏幕保护程序打开后获取位置

Cordova 屏幕保护程序打开后获取位置,cordova,geolocation,Cordova,Geolocation,我正在开发一个Phonegap应用程序,当最终用户使用该应用程序时,我需要每5分钟记录一次移动用户的位置(当该应用程序位于后台时,我对获取该位置并不感兴趣)。到目前为止,我使用此功能: setInterval(function() { navigator.geolocation.getCurrentPosition(geo_onSuccess, geo_onError); }, 1000 * 60 * 0.1); 备注:出于测试目的,将其设置为0.1而不是5(5分钟) 在屏幕保护程序激活

我正在开发一个Phonegap应用程序,当最终用户使用该应用程序时,我需要每5分钟记录一次移动用户的位置(当该应用程序位于后台时,我对获取该位置并不感兴趣)。到目前为止,我使用此功能:

setInterval(function() {
   navigator.geolocation.getCurrentPosition(geo_onSuccess, geo_onError);
}, 1000 * 60 * 0.1);
备注:出于测试目的,将其设置为0.1而不是5(5分钟)

在屏幕保护程序激活之前,此功能正常工作。当我打开屏幕时,将不再调用函数geo_onSuccess。。我刚刚通过geo_onError 1次得到一个超时错误。在屏幕打开后,我如何使这个插件工作(重新启动?)?或者是否有其他方法定期记录移动用户的位置


谢谢

向项目中添加一些事件处理程序:

var geoInterval;

document.addEventListener("resume", onResume, false);

function onResume(){
   geoInterval = setInterval(function() {
      navigator.geolocation.getCurrentPosition(geo_onSuccess, geo_onError);
      }, 1000 * 60 * 0.1);
}