PhoneGap thực sự sử dụng định vị vệ tinh GPS giống như nền tảng Android. Bạn sẽ nhận được vị trí có độ chính xác chính xác hơn 150m nếu GPS của điện thoại được bật. Bất cứ khi nào bạn gọi phương thức geolocation.getCurrentPosition()
hoặc geolocation.watchPosition()
, lớp GeoListener
của PhoneGap yêu cầu nhà cung cấp GPS và nhà cung cấp NETWORK, sau đó nó tạo người nghe cho cả hai nhà cung cấp, nếu họ tồn tại. Đây là lý do bạn đang nhận được một loạt các độ chính xác.
Vì vậy, trong trường hợp bạn muốn bắt buộc các vị trí có độ chính xác cao, bạn có thể đặt nó thành đúng trên thông số geolocationOptions
được chuyển đến các phương pháp trên. Kiểm tra các API: geolocationOptions
navigator.geolocation.watchPosition(
onSuccess, onError,
{ maximumAge: 3000, timeout: 5000, enableHighAccuracy: true });
Trong trường hợp bạn muốn có quyền kiểm soát nhiều hơn và một hành vi chính xác hơn về vị trí yêu cầu bạn có thể mở rộng API PhoneGap để làm như vậy.
Điều này đã được đặt ở đây http://stackoverflow.com/questions/7518468/phonegap-gps-without-internet – Andy
Bạn đã tìm thấy giải pháp chưa? Điều tương tự đối với tôi với Cordova 3.0.0, Biểu tượng gps không hiển thị ngay cả với enableHighAccuracy: true. – arlg