I'm having a lot of trouble with showing a dialog while getting a GPS fix :(
Code: http://pastie.org/private/5a1yclz1qt7wywafpmdckw
MyLocation code from here: https://stackoverflow.com/a/3145655/3210508
locationResult = new MyLocation.LocationResult() {
@Override
public void gotLocation(Location location)
{
lat = location.getLatitude();
lon = location.getLongitude();
acc = location.getAccuracy();
Log.i("TRIREC", "Got location: " + lat + ", " + lon + ", " + acc);
}
};
myLocation = new MyLocation();
myLocation.getLocation(Home.this, locationResult);
Error when calling above code outside of runonuithread
20136-20364/nl.deadpixel.trianglerecycling E/AndroidRuntime﹕ FATAL EXCEPTION: AsyncTask #1
Process: nl.deadpixel.trianglerecycling, PID: 20136
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:300)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
at android.os.Handler.<init>(Handler.java:200)
at android.os.Handler.<init>(Handler.java:114)
at android.location.LocationManager$ListenerTransport$1.<init>(LocationManager.java:221)
at android.location.LocationManager$ListenerTransport.<init>(LocationManager.java:221)
at android.location.LocationManager.wrapListener(LocationManager.java:844)
at android.location.LocationManager.requestLocationUpdates(LocationManager.java:857)
at android.location.LocationManager.requestLocationUpdates(LocationManager.java:454)
at nl.deadpixel.trianglerecycling.MyLocation.getLocation(MyLocation.java:38)
at nl.deadpixel.trianglerecycling.Home$getLocationTask.doInBackground(Home.java:288)
at nl.deadpixel.trianglerecycling.Home$getLocationTask.doInBackground(Home.java:254)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)