반응형
Tread를 사용하다 보면 다음과 같은 오류가 발생함.
Can't create handler inside thread that has not called Looper.prepare()
이때 아래 코드를 사용하면 됨.
참조해야될 라이브러리
import android.os.Handler;
import android.os.Looper;
1 2 3 4 5 6 7 8 | Handler mHandler = new Handler(Looper.getMainLooper()); mHandler.postDelayed( new Runnable() { @Override public void run() { // code } }, 0 ); |
Timer에서의 사용 예
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | TimerTask timerTask = new TimerTask() { @Override public void run() { Handler mHandler = new Handler(Looper.getMainLooper()); mHandler.postDelayed( new Runnable() { @Override public void run() { double latitude = "" ; double longitude = "" ; gps = new Gps(); latitude = gps.getLatitude(); longitude = gps.getLongitude(); SaveLocation(phoneNumber, rLatitude, rLongitude); } }, 0 ); } }; Timer timer = new Timer(); timer.schedule(timerTask, 5 , 10000 ); |
참고 사이트
https://altongmon.tistory.com/7
https://stackoverflow.com/questions/11359930/android-cant-create-handler-inside-thread-that-has-not-called-looper-prepare
반응형
'Android' 카테고리의 다른 글
error: cannot resolve constructor (0) | 2019.10.01 |
---|---|
Toolbar (0) | 2019.09.30 |
폰의 전화번호 조회 (0) | 2019.09.26 |
Android Exception Message (0) | 2019.09.05 |
Activity 간 이동 후에 이전 Activity로 되돌아 갈 때 (0) | 2019.09.05 |
댓글