Android обработчик / поток на активность - PullRequest
0 голосов
/ 30 июня 2011

Мне нужно преобразовать класс usign (новый поток) .start () в поток, который разрешил бы взаимодействие с Activity (чтобы вы могли, например, sej alert.show ()).

Класс выглядит так:

public abstract class MyClient implements Runnable 
{
  private Handler mHandler = new Handler();
  public void connect() 
  {
    if (!running) 
    {
      this.running = true;
      mHandler.post(this);
      // (new Thread(this)).start();
    }
  }

  public void run() 
  {
    while (this.running) 
    {
       ...
    }
    // thread ended
}

Я заставил это работать, но оно прекратилось. Отныне у меня черный экран и я получаю

Activity idle timeout for HistoryRecord{...}

Как я могу это исправить?

1 Ответ

0 голосов
/ 30 июня 2011

Использовать AsyncTask.Он был разработан именно для упрощения взаимодействия с UI-потоком, чем Threads и Handlers.Смотри: http://developer.android.com/reference/android/os/AsyncTask.html

...