2012-01-19 3 views
1

백그라운드 작업을 시작하려고합니다. 그래서 다음과 같습니다새 스레드에서 시작에 문제가 있음

  new Thread() { 
     @Override 
     public void run() { 
      this.startActivity(new Intent(this, WhereAmI.class)); 
     } 
    }.start(); 

startActivity는 새 스레드 내에서 만들 수 없습니다. 이 작업을 수행 할 수없는 경우 백그라운드에서 새 작업을 시작하여 현재 GUI에 영향을 미치지 않도록 할 수 있습니다.

답변

2

Android를 찾으십시오 Services. 그것들은 현재 UI에 영향을 미치지 않는 "배경"활동입니다. 서비스는 스레드가 아니며 기본 UI 스레드에서 실행됩니다. 또한 스레드에서 서비스를 시작할 수 없습니다. 차단 작업을 수행해야하는 경우 Service 내부에서 스레드를 시작해야합니다.