Hello everyone, I had this issue using Geocoder's function getFromLocation(). According to the docs it should be called inside a separate thread from the primary UI thread. I did it and called it inside the doInBackground() of the AsyncTask class. Now the issue is even I implemented it that way still the front end UI is still affected if the internet connection is slow or totally cutoff. I have tried using Handlers and also using new Thread( new Runnable() ... ) implementation still blocks the UI Thread. Below is the snippet of my AsyncTask implementation.
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... ReverseGeocodeLookupTask task = new ReverseGeocodeLookupTask(); task.execute(DESTLAT,DESTLONG); } public class ReverseGeocodeLookupTask extends AsyncTask <Double, Void, String> { @Override protected void onPreExecute() { } @Override protected String doInBackground(Double... location) { Log.v( TAG , "inbackground"); Geocoder coder = new Geocoder(MyClass.this); try { //just return Success or Error to demonstrate that calling this function still blocks the UI thread coder.getFromLocation(DESTLAT, DESTLONG, 2); return "Success"; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); return "Error"; } } @Override protected void onPostExecute(String result) { Log.v(TAG ,"Result: " + result); } } Hoping for your help. Thanks. - Brian -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en