2013-04-21 13 views
5

Sto provando l'API di geolocalizzazione phonegap (versione 2.5) con il mio dispositivo Android 4.0.4 ma non ottengo nulla. sto usando il codice dalla documentazione di PhoneGap. Secondo loro "se il GPS e il wifi sono disabilitati dovrebbe individuarlo usando triangolazione cella cellulare" ma questo codice non dà niente per me. Quando mi collego al wifi mi dà la posizione perfetta ma quando non c'è internet, non funzionerà. Ho successo con tutte le altre API di phonegap, ma solo le API di geolocalizzazione mi stanno dando problemi. Per favore aiutami a risolvere questo.Geonegap 2.5.0 geolocalizzazione non funziona con Android 4.0.4

E un altro dubbio mi perdoni se sembra divertente dubbio .... Io uso la connessione wifi nel mio cellulare e mai connesso ad altri servizi (2G, 3G ecc.), Trovare la posizione usando il wifi significa solo internet wifi o include anche connessioni 2g e 3g?

Thnaks in anticipo

<!DOCTYPE html> 
     <html> 
     <head> 
    <title>Device Properties Example</title> 

    <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script> 
    <script type="text/javascript" charset="utf-8"> 

    // Wait for Cordova to load 
    // 
    document.addEventListener("deviceready", onDeviceReady, false); 

    // Cordova is ready 
    // 
    function onDeviceReady() { 
     navigator.geolocation.getCurrentPosition(onSuccess, onError); 
    } 

    // onSuccess Geolocation 
    // 
    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: '   +         position.timestamp   + '<br />'; 
    } 

    // onError Callback receives a PositionError object 
    // 
    function onError(error) { 
     alert('code: ' + error.code + '\n' + 
       'message: ' + error.message + '\n'); 
    } 

    </script> 
    </head> 
    <body> 
    <p id="geolocation">Finding geolocation...</p> 
    </body> 
</html> 

avuto modo di conoscere una cosa .. Non funzionerà con 2G e 3G .. funziona solo con WIFI

+0

funziona ora? Ho lo stesso problema ..: P – F481

risposta

0

stavo affrontando lo stesso problema, in un primo momento ho pensato potrebbe avere qualcosa a che fare con PhoneGap o Android (potrebbe essere un problema di compatibilità o qualcosa del genere). Ma più tardi, ho scoperto che mi mancava un file config.xml nella cartella principale (insieme a index.html) di risorse PhoneGap (HTML, CSS, JS).

Ho quindi creato un file config.xml e ho messo tutti i permessi necessari, le funzionalità ecc. E il problema risolto.

Si potrebbe desiderare di dare un'occhiata al file config.xml: http://bit.ly/gap-config

Linea 25 ha l'autorizzazione per Geolocation API.

Se si manca questo file config.xml, si suggerisce di passare attraverso il file dall'URL sopra riportato e di compilare/rimuovere le informazioni necessarie affinché l'applicazione funzioni correttamente.

Saluti :)

+1

Grazie per la tua risposta, ma in Android PhoneGap aggiungiamo il permesso nel file androidmanifest non nel file di configurazione .. questo è per IOS – Praveen

+0

Bene, questo è risolto il mio problema per Android 4.0.4, btw io costruisco manualmente utilizzando il servizio PhoneGap Build, non Eclipse con ADT. – undefined

0

So che questo è un vecchio post .. ma si potrebbe provare a sostituire ..

<script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script> 

con

<script type="text/javascript" charset="utf-8" src="cordova.js"></script> 

lavorato per me = D

Problemi correlati