Я не думаю, что вам нужна точность-местоположения-запроса-плагина-кордовы. Вот как вы получаете текущее местоположение с помощью Capacitor:
Класс страницы ( обновлен с обработкой ошибок ):
import { Component } from '@angular/core';
import { GeolocationPosition, Plugins } from '@capacitor/core';
const { Geolocation } = Plugins;
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
})
export class HomePage {
currentPos: GeolocationPosition;
waitingForCurrentPosition = false;
constructor() {
}
async getCurrentPos() {
try {
this.waitingForCurrentPosition = true;
this.currentPos = await Geolocation.getCurrentPosition();
console.log(this.currentPos);
} catch (err) {
console.error('Failed to get current position.', err);
} finally {
this.waitingForCurrentPosition = false;
}
}
}
Шаблон страницы:
<ion-header>
<ion-toolbar>
<ion-title>
Capacitor Geolocation
</ion-title>
</ion-toolbar>
</ion-header>
<ion-content>
<ion-button (click)="getCurrentPos()" expand="block">
<ion-spinner *ngIf="waitingForCurrentPosition"></ion-spinner>
Get Current position
</ion-button>
<ul *ngIf="currentPos">
<li>timestamp: {{ currentPos.timestamp }}</li>
<li>coords:
<ul>
<li>latitude: {{ currentPos.coords.latitude }}</li>
<li>longitude: {{ currentPos.coords.longitude }}</li>
<li>accuracy: {{ currentPos.coords.accuracy }}</li>
<li>altitudeAccuracy: {{ currentPos.coords.altitudeAccuracy }}</li>
<li>altitude: {{ currentPos.coords.altitude }}</li>
<li>speed: {{ currentPos.coords.speed }}</li>
<li>heading: {{ currentPos.coords.heading }}</li>
</ul>
</li>
</ul>
</ion-content>
Приложение запросит разрешения, когда вы попытаетесь получить позицию (нажмите кнопку).
Это работает на 2 тестовых устройствах:
- OnePlus 6 (Android 10)
- BlackView A60 (Android Go)
Я тестировал его раньше на iPhone 6S, поэтому он также должен работать для iOS.
Я создал демонстрацию basi c в этом репо .