Tôi đang sử dụng plugin Ionic 2 Geolocation gốc và nó không hoạt động như mong đợi. Đầu tiên, tôi thêm plugin.Vị trí địa lý ionic 2 không hoạt động trên thiết bị Android
ionic plugin add cordova-plugin-geolocation
Sau đó, tôi nhập plugin và thực hiện cuộc gọi để nhận vị trí hiện tại.
import { Geolocation } from 'ionic-native';
import { Geoposition, GeolocationOptions } from 'ionic-native/dist/plugins/geolocation';
export class MyComponent {
protected getLocation():Promise<Geoposition> {
let options:GeolocationOptions = {
maximumAge: 0, timeout: 5000, enableHighAccuracy: false
};
return Geolocation.getCurrentPosition(options)
.catch(error => { console.error(error.message) };
}
}
Tôi cũng đã kiểm tra tệp AndroidManifest.xml của mình.
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Tôi nhận thấy rằng thời gian chờ luôn vượt quá. Nếu tôi để nó mặc định (thời gian chờ được thiết lập để vô cùng theo mặc định), sau đó khoảng 20 phút sau đó, tôi thực sự có được một vị trí địa lý. Tất nhiên, 20 phút không phải là lý tưởng.
Tôi cũng đã thử sử dụng navigator
như sau. Nhưng tôi nhận được kết quả chính xác.
navigator.geolocation.getCurrentPosition(
position => {
console.info('using navigator');
console.info(position.coords.latitude);
console.info(position.coords.longitude);
},
error => {
console.warn('using navigator');
console.warn(error.code);
console.warn(error.message);
},
options
);
Khi thử nghiệm trên Chrome
, mã hoạt động như mong đợi; sự khác biệt duy nhất là tôi nhận được một popup yêu cầu nếu tôi muốn cho phép các trang để truy cập vị trí của tôi.
tôi thấy rất nhiều người có cùng một vấn đề trên SO với Ionic quá, nhưng đó là với phiên bản 1. Tôi muốn hỏi câu hỏi này trong bối cảnh Ionic 2.
Bằng cách này, tôi cũng đã cập nhật Cordova và phiên bản được hiển thị là 6.0.2.
npm update -g cordova
Version thông tin
- Ionic 2.0.0-beta.30
- Cordova 6.0.2
- Gulp CLI 1.2.1 và địa phương 3.9.1
Đối mặt với cùng một vấn đề. Bạn đã tìm thấy giải pháp chưa? – likerRr
giải pháp được tìm thấy? –
không, tôi chưa tìm thấy giải pháp. ngày khác tôi nhìn vào ion 2, và có một plugin định vị địa lý mới, tôi sẽ thử điều đó. tôi sẽ đăng liên kết sau và thử xem nó có giúp ích gì không. –