Phonegap在应用程序运行时启用GPS/位置



我正在使用jquery-ui-maps和HTML5地理位置向用户显示位置列表,我需要利用用户的地理位置。

所以,这是用例,

  1. 用户未启用 GPS/定位服务。
  2. 用户打开应用程序并导航到调用 navigator.geolocation 以获取用户位置的视图
  3. 应用程序出错并通知用户他们必须启用 GPS/定位服务
  4. 然后,用户导航出应用并启用 GPS
  5. 当用户返回应用并尝试查看地图(再次调用地理位置)时,应用仍然无法使用 GPS。

我相信我已经将其缩小到Phonegap问题,其中GPS权限在应用程序加载时初始化并且从未重新评估。

我的问题是,可以在应用程序运行时启用 GPS 还是 Phonegap 需要重新加载应用程序才能使用 GPS?

Phonegap确实支持GPS的实时更新。

这是一个直接链接:

http://docs.phonegap.com/en/3.1.0/cordova_geolocation_geolocation.md.html#geolocation.watchPosition

一般来说,它被称为"手表位置",您可以自己设置刷新计时器。

关于在运行时启用 GPS。

尽量只打电话给navigator.geolocation.watchPosition().

请记住在您的配置上授予对地理位置的访问权限.xml但我想你知道;)

我希望它有所帮助。

挣扎了一段时间后,我找到了一个能够帮助我解决相同问题的插件

https://github.com/nishantsharmajecrc/cordova-dialog-gps

  function calldialog() {
 document.addEventListener("deviceready",function() {
 cordova.dialogGPS("Your GPS is Disabled, this app needs to be enable to          works.",//message
            "Use GPS, with wifi or 3G.",//description
            function(buttonIndex){//callback
              switch(buttonIndex) {
                case 0: break;//cancel
                case 1: break;//neutro option
                case 2: break;//user go to configuration
              }},
              "Please Turn on GPS",//title
              ["Cancel","Later","Go"]);//buttons
  });
  }

相关内容

  • 没有找到相关文章

最新更新