본문 바로가기

IT 자료/프로그래밍

안드로이드 AsyncTask가 실행되지 않을 때 해결 방법

AsyncTask는 안드로이드에서 UI 갱신을 할 때 사용하는 스레드(Thread)입니다. 

안드로이드는 스레드에서는 UI에 접근하기가 쉽지 않은데 AsyncTask를 이용하면 쉽게 접근이 가능하게 합니다. 

이런 이유 때문에 AsyncTask를 자주 사용하게 되는데 예제대로 해도 AsyncTask를 호출해도 실행이 안되는 경우가 있습니다.

안드로이드 4.0(허니콤) 이상에서는 executeOnExecutor 메소드로 호출해야 실행이 됩니다.


if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)

    my_task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, (Void[])null);

else

    my_task.execute((Void[])null)