原生离子地理定位有时不起作用

问题描述 投票:0回答:1

原生离子地理定位有时不适用于少数设备。需要重新启动设备才能运行geolocation.Geolocation重启设备后工作。我在android 5.0.2版上遇到了问题。

我的代码:

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { Geolocation } from '@ionic-native/geolocation';
import 'rxjs/add/observable/bindCallback';
import 'rxjs/add/operator/catch';
import 'rxjs/add/observable/fromPromise';
import 'rxjs/add/observable/throw';


@Injectable()
export class LocationService {

  constructor (
    private geolocation: Geolocation
  ) { }

  getLocation(): Observable<any> {
    return Observable.fromPromise (
      this.geolocation.getCurrentPosition({
        maximumAge: 5 * 60 * 1000, // 5 minutes
        timeout: 30000,
        enableHighAccuracy: true
      })
    ).catch(err => {
      console.log(err)
      return Observable.throw(err);
    })
  }
}
ionic-framework ionic3
1个回答
1
投票

尝试使用Ionic平台进行环绕。

  constructor(public plt: Platform) {
    this.plt.ready().then((readySource) => {
      console.log('Platform ready from', readySource);
      // Platform now ready, execute any required native code
    });
  }

https://ionicframework.com/docs/api/platform/Platform/

© www.soinside.com 2019 - 2024. All rights reserved.