Cordova地理位置服务无法正常工作

时间:2018-06-25 07:06:56

标签: javascript reactjs cordova geolocation cordova-plugins

我正在尝试在前端使用React构建一个cordaova应用程序。

我正在使用cordova-plugin-geolocation插件。

当我在模拟器上启动应用程序时。它要求获得位置许可。

enter image description here

但是当我授予权限时,我收到超时错误:

enter image description here

我已经这样初始化了反应应用程序:

const startApp = () => {
    ReactDOM.render(<App />, document.getElementById('root'));
    registerServiceWorker();
}
    
if(!window.cordova) {
    startApp()
} else {
    document.addEventListener('deviceready', startApp, false)
}

我正在ComponentDidMount()生命周期方法中将位置服务称为:

function onSuccess(position) {
    this.setState({
      locationLat : position.coords.latitude,
      locationLng : position.coords.longitude
    });
}

    // onError Callback receives a PositionError object
    //
function onError(error) {
    alert('code: '    + error.code    + '\n' +
          'message: ' + error.message + '\n');
}

    // Options: throw an error if no update is received every 30 seconds.
    //
var watchID = window.navigator.geolocation.watchPosition(onSuccess.bind(this), onError, { timeout: 30000 });

此错误的原因可能是什么? 我该如何解决?

感谢您的帮助。

0 个答案:

没有答案