Итак, я разрабатываю свое первое многопоточное приложение, использующее Android с классом AsyncTask. Я пытаюсь использовать его, чтобы отключить геокодер во втором потоке, а затем обновить пользовательский интерфейс с помощью onPostExecute, но я все время сталкиваюсь с проблемой с соответствующим контекстом.
Я как-то ковылял свой путь с помощью Contexts в основном потоке, но я не совсем уверен, что такое Контекст или как его использовать в фоновом потоке, и я не нашел на нем хороших примеров. Любая помощь? Вот отрывок из того, что я пытаюсь сделать:
public class GeoCode extends AsyncTask<GeoThread, Void, GeoThread> {
@Override
protected GeoThread doInBackground(GeoThread... i) {
List<Address> addresses = null;
Geocoder geoCode = null;
geoCode = new Geocoder(null); //Expects at minimum Geocoder(Context context);
addresses = geoCode.getFromLocation(GoldenHour.lat, GoldenHour.lng, 1);
}
}
Он продолжает терпеть неудачу на шестой строке из-за неправильного контекста.