안드로이드, ANR 에러 해결 방법.
ANR 오류, 시도 때도 없이 나온다. ANR오류가 발생하는 이유? 안드로이드는 태생부터, 응답시간을 초과하면 스레드가 중지된다. 문제는, Activity에서 응답시간을 초과하면 그나마 다이얼로그 창이 나오면서 표시라도 해준다. 하지만, 다른 클래스에서 응답 시간이 초과되면, 그냥 조용히, 프로그램이 종료되게 된다. 이 문제에 대해서 한참 고생해서 해결법을 올려본다. 일단 Thread로는 해결이 불가능하다. Thread 처리로 하면 이론상으로는 백그라운드에서 실행하게 되지만, 종료 시점이 맞물리게 되면서 추가적인 문제가 발생할 가능성이 많고, 잠재적인 오류를 가지고 있다. 그래서 AsyncTask클래스를 이용해야 하는데, 문제는 AsyncTask도 Activity를 상속하지 않으면 사용할 수 없다는 점이..
카테고리 없음
2012. 2. 11. 18:15