GPS位置(开/关)事件

时间:2016-07-18 01:46:28

标签: cordova ionic-framework geolocation ionic2

是否有任何eventListener可以不断收听我的GPS定位服务?一旦我的GPS关闭,我希望我的应用程序“做点什么”。

目前我正在使用cordova插件。并且我嵌套了2秒的间隔以继续检查,我确信有更简单且更具代码效率的eventListener将用于相同的目的,我不想在我的代码中使用间隔。

setInterval(function(){
    cordova.plugins.diagnostic.isLocationAvailable(function(available)
    {
        //do something if available
    },function(error){console.log(error);});
}, 2000);

2 个答案:

答案 0 :(得分:2)

您可以使用该插件中的registerLocationStateChangeHandler()

  

当位置状态发生变化时,注册要调用的函数。

cordova.plugins.diagnostic.registerLocationStateChangeHandler(function(state){
    console.log("Location state changed to : " + state);
});

答案 1 :(得分:0)

从cordova-plugin-mauron85-background-geolocation检查watchLocationMode(成功,失败)功能

https://www.npmjs.com/package/cordova-plugin-mauron85-background-geolocation#watchlocationmodesuccess-fail

它还有其他很好的功能,当应用程序处于后台和前台时它可以正常工作。