09-01 10:07:38.778: WARN/dalvikvm(547): threadid=17: thread exiting with uncaught exception (group=0x4000fe70)
09-01 10:07:38.778: ERROR/AndroidRuntime(547): Uncaught handler: thread Thread-9 exiting due to uncaught exception
09-01 10:07:38.788: ERROR/AndroidRuntime(547): android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.view.ViewRoot.checkThread(ViewRoot.java:2440)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.view.ViewRoot.invalidateChild(ViewRoot.java:522)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.view.ViewRoot.invalidateChildInParent(ViewRoot.java:540)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.view.ViewGroup.invalidateChild(ViewGroup.java:2332)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.view.View.invalidate(View.java:4437)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.widget.TextView.checkForRelayout(TextView.java:5167)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.widget.TextView.setText(TextView.java:2631)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.widget.TextView.setText(TextView.java:2501)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at android.widget.TextView.setText(TextView.java:2476)
09-01 10:07:38.788: ERROR/AndroidRuntime(547):     at com.mir.Activity.GenBarcodeActivity$3.run(GenBarcodeActivity.java:306)


위와 같은 에러메세지가 나왔습니다. 아래는 에러가 발생하는 소스코드이구요.

 public void run() {
				//TOTAL_TIME=0;
				while(TOTAL_TIME <= MAX_AVAILABLE_TIME){
					try{
						Thread.sleep(1);
					}catch(Exception e){
						Log.e("MIR","#ERROR: SLEEP ERROR.");
					}
					if(PREVIOUS_CHECK_TIME==0){
						Log.i("MIR", "Case Total_Time is 0");
						PREVIOUS_CHECK_TIME=System.currentTimeMillis();
					}else{
						TEMP_CURRENT_TIME=System.currentTimeMillis();
						if((((TEMP_CURRENT_TIME-PREVIOUS_CHECK_TIME)/1000))==1){
							Log.i("MIR", "Case: temp_current-previous == 1");
							PREVIOUS_CHECK_TIME=TEMP_CURRENT_TIME;
							TextView showTimer=(TextView)findViewById(TV_ID);
							showTimer.setText(Long.toString(TOTAL_TIME));
							TOTAL_TIME++;
						}
					}
				}
			}


위와 같은 비슷한 동작을 하는 (핸들러를 사용) 함수에서는 에러코드가 없이 잘 돌아갔는데요. 위처럼 바꾸니깐 안드로이드의 unexpected러가 발생을 하네요. 제가 코딩 경험이 많지가 않아서 .. 에러메세지를 잡는 건 잘 못하겠습니다^ ^;;

try-catch에서 에러가 난건 아닌거 같고 Temp_current_time - previous_check_time/1000 ==1 요부분에서 에러가 난거 같은데 ... 

간혹 저런 에러가 발생할때가 있어서요. 답변 부탁드리겠습니다 (_ _)