«Метод getLocation () не может быть вызван из потока событий» - PullRequest
2 голосов
/ 16 мая 2011

Я разрабатываю приложение, в котором пытаюсь получить текущее местоположение.Но я получаю сообщение об ошибке «метод getLocation () не может быть вызван из потока событий», хотя я создал новый поток.Кто-нибудь может мне помочь?

Вот мой код

Thread t = new MyThread();
t.run();

, а вот функция запуска класса MyThread:

try
    {

        Criteria cr = new Criteria();
        cr.setHorizontalAccuracy(500);
        LocationProvider lp = LocationProvider.getInstance(cr);
        Location l = lp.getLocation(60);
        Coordinates c = l.getQualifiedCoordinates();
        if (c != null)
        {
            double longitude = c.getLongitude();
            double latitude = c.getLatitude();
            Dialog.alert("latitude:"+latitude);
            Dialog.alert("longitude:"+longitude);
        }
    }catch(Exception e){
        Dialog.alert(e.getMessage());

    }

1 Ответ

3 голосов
/ 16 мая 2011

Вы не запускаете поток, вызывая метод run ().Вы запускаете поток, вызывая метод start ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...