Method execute must be called from the main thread, currently inferred thread is worker
Programming/Android 2017. 1. 17. 10:33반응형
1. 예를 들어, GCM Service에서 인터넷 통신을 위해 AsyncTask를 사용을 했다면 해당 오류를 접할 수 있다.
2. GCM Service는 이미 백그라운드에서 작동이 되기 때문에, AsyncTask 클래스 생성시 빨간 줄로 아래와 같은 메세지가 나타난다.
Method execute must be called from the main thread, currently inferred thread is worker
3. AsyncTask는 비동기처리 방식이므로, 백그라운드 안에, 사용하려니 발생하는 현상이다.
3. 이미 백그라운드에서 작동하는 곳에서는 굳이 쓸 필요가 없다. 그냥 구현하면 되겠다.
반응형
'Programming > Android' 카테고리의 다른 글
[Android Studio] 릴리즈(Release)로 바로 컴파일하기 (0) | 2017.01.20 |
---|---|
java.lang.OutOfMemoryError: Failed to allocate a ? byte allocation with ? free bytes and ?MB until OOM (0) | 2017.01.20 |
Android dmesg 및 Shell 사용하기 (0) | 2017.01.03 |
Android Studio SVN 에서 Ignore 목록 (0) | 2016.12.30 |
Avoid non-default constructors in fragments: use a default constructor plus Fragment#setArguments(Bundle) (0) | 2016.12.27 |