2013-01-14 79 views
0

我正在创建一个获取用户位置的应用程序。这些应用程序使用3G正常工作,问题出现在我禁用3G并希望仅使用GPS运行应用程序时,应用程序甚至无法启动。GPS地理位置应用程序在Phonegap for Android中不起作用

的代码,我有:

document.addEventListener("deviceready", onDeviceReady, false); 

function onDeviceReady() { 
    navigator.geolocation.getCurrentPosition(onSuccess, onError); 
} 

function onSuccess(position) { 
    var element = document.getElementById('geolocation'); 
    element.innerHTML = 'Latitude: '   + position.coords.latitude    + '<br />' + 
         'Longitude: '   + position.coords.longitude    + '<br />' + 
         'Altitude: '   + position.coords.altitude    + '<br />' + 
         'Accuracy: '   + position.coords.accuracy    + '<br />' + 
         'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '<br />' + 
         'Heading: '   + position.coords.heading    + '<br />' + 
         'Speed: '    + position.coords.speed     + '<br />' + 
         'Timestamp: '   + new Date(position.timestamp)   + '<br />'; 
} 

function onError(error) { 
    alert('code: ' + error.code + '\n' + 
      'message: ' + error.message + '\n'); 
} 
+0

重复的http://stackoverflow.com/questions/9660042/phonegap-geolocalisation-application-crashes?rq=1 –

回答

8

地理位置并不意味着你将要使用的GPS。默认情况下,您将使用网络位置。您必须启用高精度!

+0

这是通过添加Position.FINE到清单中的权限,根据我的答案在下面。 – Stephan

2

请确保您的权限int清单中包含Position.FINE,以便您的应用程序将被允许使用gps接收器。

2

转到您的Android Manifest并检查您是否有权执行此操作。

相关问题