Wersja PhoneGap: 2.0.0. Poziom interfejsu API Androida 16 (wersja 4.0.3). przykładowy kod, który skłania błąd:PhoneGap. Nie można uruchomić usługi geolokalizacji
navigator.geolocation.getCurrentPosition(onSuccess, onError, {enableHighAccuracy:true});
function onSuccess(position) {
console.log('latitude: '+ position.coords.latitude);
console.log('longitude: '+ position.coords.longitude);
}
function onError(error) {
console.log('Appeared error : '+ error.message);
}
Zawsze otrzymuję błąd w emulatorze Failed to start Geolocation service
, kod błędu 2
. Nawet jeśli wysłać Współrzędne GPS poprzez konsoli Android lub DDMS
Android uprawnienia manifeście:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Mam prawdziwe urządzenie z wersją Androida 2.3, ale nie mam urządzenia z wersją 4.x. Więc testuję w emulatorze. Tak, w prawdziwym urządzeniu nie ma takiego błędu. Tylko w emulatorze. –
Spróbuj dodać parametr eventListener. – jmpenetra
@ JoãoPenetra Dodałem to do mojego kodu i otrzymałem go, aby nie zwracał żadnych błędów! Dziękuję za to! Ale ... teraz podwaja moje żądanie JSONP do Google Fusion Tables, które również używa tej lokalizacji. Czy możesz wymyślić jakikolwiek powód, dla którego miałby wykonywać dwa połączenia za pomocą 'enableHighAccuracy'? Bez tego tam, zwraca tylko 1 zestaw danych, ale najpierw zgłasza błąd. Oto plik: https://github.com/jamez14/TrailFinder/blob/master/TrailFinder/www/js/map.js – jamez14