Cordova地理位置插件无法从GPS获取Android的位置

时间:2015-04-15 09:35:06

标签: android cordova gps geolocation

在我的Cordova应用程序中,我试图从GPS获取用户的位置。为此,我使用Geolocation plugin。我需要每10秒钟获取一次位置。我正在做类似的事情:

navigator.geolocation.getCurrentPosition(
                      $rootScope.onSuccessForLocation,
                      $rootScope.onErrorForLocation_High,
                      {maximumAge:600000, timeout:7000, enableHighAccuracy: true}
                      );

现在,当这段代码运行时,它给了我回调方法的位置,但它不是来自GPS,因为应用程序启动时GPS图标应该出现并开始在状态栏中闪烁。但它没有发生。 我有一个使用相同插件的旧应用程序。当我启动该应用程序时,GPS图标开始闪烁。到目前为止我注意到的一件事是,在旧的应用程序中,我可以在android项目中看到Geolocation.java文件但是在最新的插件中没有这样的文件,即使我试图在Github源文件夹中搜索它。现在,我不知道我身边缺少什么。有谁知道发生了什么事?

1 个答案:

答案 0 :(得分:4)

他们正在使用HTML5地理位置实现而不是本机代码。 他们在插件版本0.3.7上删除了android java代码

### 0.3.7 (Apr 17, 2014)
* CB-6422: [windows8] use cordova/exec/proxy
* CB-6212: [iOS] fix warnings compiled under arm64 64-bit
* CB-5977: [android] Removing the Android Geolocation Code.  Mission Accomplished.
* CB-6460: Update license headers
* Add NOTICE file

如果您想使用旧版本的插件,使用本机代码,您可以像这样安装

cordova plugin add org.apache.cordova.geolocation@0.3.6