java - No GPS Update retrieved? Problem in Code? -


i've got serious problem gps on nexus one: wrote kind of hello world gps, toast should displayed isn't :(

i don't know i'm doing wrong...maybe me getting work. here's code:

package gps.test;  import android.app.activity; import android.content.context; import android.location.location; import android.location.locationlistener; import android.location.locationmanager; import android.os.bundle; import android.widget.toast;  public class gps extends activity { private locationmanager lm; private locationlistener locationlistener;  /** called when activity first created. */ @override public void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.main);      // ---use locationmanager class obtain gps locations---     lm = (locationmanager) getsystemservice(context.location_service);      locationlistener = new mylocationlistener();      lm.requestlocationupdates(locationmanager.gps_provider, 100, 1,             locationlistener); }  private class mylocationlistener implements locationlistener {     @override     public void onlocationchanged(location loc) {         if (loc != null) {             toast.maketext(                     getbasecontext(),                     "location changed : lat: " + loc.getlatitude()                             + " lng: " + loc.getlongitude(),                     toast.length_short).show();         }     }      @override     public void onproviderdisabled(string provider) {         // todo auto-generated method stub     }      @override     public void onproviderenabled(string provider) {         // todo auto-generated method stub     }      @override     public void onstatuschanged(string provider, int status, bundle extras) {         // todo auto-generated method stub     } } } 

theoretically there should new toast every 100 milliseconds, shouldn't it? or @ least, when change position 1 meter!? i've no idea why doesn't. must admit i'm new topic, maybe i've missed something?

it great if give me hint :)

nice greetings, poeschlorn

the code looks correct me. note that:

    lm.requestlocationupdates(locationmanager.gps_provider, 100, 1,         locationlistener); 

this means have move phone more meter location updates , check done approximately every 0.1 second.

i suggest add logging statements in these functions:

  @override public void onproviderdisabled(string provider) {     // todo auto-generated method stub }  @override public void onproviderenabled(string provider) {     // todo auto-generated method stub }  @override public void onstatuschanged(string provider, int status, bundle extras) {     // todo auto-generated method stub } 

this know flow code taking. gps disabled e.g. , you'll not know within app.

and finally, remember remove listening locations in onpause (or when required). having app in background continuously getting location updates when not required huge drain battery.


Comments

Popular posts from this blog

javascript - Enclosure Memory Copies -

php - Replacing tags in braces, even nested tags, with regex -