У меня есть приложение на Android, которое в другом потоке от пользовательского интерфейса (который реализует Runnable)
Я получаю некоторые данные (данные GPS в виде широты и долготы) и из этих данных I
хочу выяснить правильный адрес, передав его геокодеру ..... после этого адрес, возвращенный геокодером, сохраню в базе данных:
Вот как я делаю эти вещи:
public class Client implemets Runnable{
public void run()
{
Geocoder myLocation=new Geocoder(getApllicationContext,Locale.getDefault());
}
}
но я получаю ошибку здесь:
Geocoder myLocation=new Geocoder(getApplicationContext,Locale.getDefault());
Runnable не знает, кто такой getApplicationContext
..... Я пробовал с «этим» вместо этого, но та же история.....
Теперь, какой правильный контекст нужно передать конструктору геокодера ????
Вот как выглядит конструктор геокодера:
Geocoder myLocation =new Geocoder(context,locale);
В своей деятельности я делаю это:
public class Server2 extends Activity {
public void onCreate(Bundle icicle) {
ClientThread_special client = new ClientThread_special(db);//here is where I start thread
new Thread(client).start();
}
}
public class ClientThread_special implements Runnable {
public ClientThread_special(DBAdapter db){
this.db=db;
}
public void run()
{
Geocoder myLocation=new Geocoder(getApllicationContext,Locale.getDefault());
}
}
Как мне изменить конструктор
public ClientThread_special(DBAdapter db){
this.db=db;
}
, чтобы иметь в моем Runnable контекстсервера2?