2012-03-02 13 views
5

ho fatto un'applicazione Android che invia le coordinate GPS ad uno script PHP (ogni secondo), che li invia a un database per memorizzare, e poi un programma di Javascript tira le coordinate (ogni secondo) e li visualizza su una mappa e traccia l'utente con marcatori e una polilinea.Android GPS per ritardo di trasmissione al database

Ho problemi con l'affidabilità delle app, però. L'ho provato nella mia stanza e sono in grado di ricevere gli aggiornamenti sulla posizione, ma quando ero in classe oggi, il telefono non inviava le coordinate. Sono uscito e ho immediatamente preso un segnale e le mie coordinate sono state inviate e poi ricevute dallo script PHP. C'è qualcosa che posso fare per questo o avrò sempre dei problemi quando all'interno di grandi edifici? Sto usando 2.2.3 se questo aiuta affatto.

Un altro problema che sto avendo è il ritardo di tempo tra quando si preme il pulsante e quando le coordinate vengono ricevuti dallo script PHP. Ci vogliono circa 20-30 secondi prima che il database li registra. Invio altri dati a una tabella diversa e arriva al db quasi istantaneamente. Questo potrebbe essere perché ho tanti programmi che le coordinate devono passare attraverso, o è il tempo di ritardo da aspettarselo dato che il telefono deve eseguire processi più complessi per ottenere le coordinate? C'è qualcosa che posso fare per ridurre questo tempo di ritardo?

risposta

1

Si dovrebbe eseguire il debug del codice sul lato client (app) e sul lato server (PHP). Creare un ID univoco per ogni aggiornamento "transazione" e stampare su entrambi i lati:

* Nell'applicazione - è possibile collegare il dispositivo al computer e utilizzare Eclipse e add debug-printings. Se si vuole essere in grado di allontanarsi dal computer - dovrete print a log file sul tuo android app

* Sul lato server è possibile utilizzare microtime() e stampare l'ID corrispondente con il tempo la richiesta è stata ricevuta

+0

Cosa si può fare per accelerare le cose? Ci sono solo poche righe di codice per aggiungere le coordinate al db usando PHP. Sarebbe più probabile che il GPS impieghi un po 'di tempo per ottenere una posizione? – mkyong

+0

Secondo la mia esperienza, il GPS può essere utilizzato in qualsiasi momento da 2-3 secondi a 15-20 secondi (ovviamente anche il timeout). Ma, se vuoi trovare la fonte del problema, dovrai fare un po 'di lavoro a piedi invece di lavorare con le congetture;) – alfasin

Problemi correlati