try {
adapter.notifyDataSetChanged();
Log.d("TRY CALL","TRY");
} catch (final Error e) {
Log.d("ERORR1","ERROR1");
} catch (final IllegalStateException e){ Log.d("ERORR2","ERROR2");
} catch (final RuntimeException e) { Log.d("ERORR3","ERROR3"); e.printStackTrace();
} catch (final Throwable e) { Log.d("ERORR4","ERROR4");
}
DB에 접근해서 데이터를 가지고온뒤 리스트뷰를 add한뒤에 위와같은 예외처리를 해주었는데요..
wifi로 할때는 예외처리가 안걸리는데 4G로하면 catch (final RuntimeException e) 예외처리가 걸리네요 ㅠㅠㅠ왜그런거죠?
e.printStackTrace()의 결과는 밑에 처럼나옵니다..
10-03 09:41:22.087: W/System.err(30914): android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
10-03 09:41:22.087: W/System.err(30914): at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:4919)
10-03 09:41:22.087: W/System.err(30914): at android.view.ViewRootImpl.focusableViewAvailable(ViewRootImpl.java:2708)
10-03 09:41:22.087: W/System.err(30914): at android.view.ViewGroup.focusableViewAvailable(ViewGroup.java:609)
10-03 09:41:22.087: W/System.err(30914): at android.view.ViewGroup.focusableViewAvailable(ViewGroup.java:609)
10-03 09:41:22.087: W/System.err(30914): at android.view.ViewGroup.focusableViewAvailable(ViewGroup.java:609)
10-03 09:41:22.087: W/System.err(30914): at android.view.ViewGroup.focusableViewAvailable(ViewGroup.java:609)
10-03 09:41:22.087: W/System.err(30914): at android.view.View.setFlags(View.java:8567)
10-03 09:41:22.087: W/System.err(30914): at android.view.View.setFocusableInTouchMode(View.java:5725)
10-03 09:41:22.092: W/System.err(30914): at android.widget.AdapterView.checkFocus(AdapterView.java:717)
10-03 09:41:22.092: W/System.err(30914): at android.widget.AdapterView$AdapterDataSetObserver.onChanged(AdapterView.java:812)
10-03 09:41:22.092: W/System.err(30914): at android.widget.AbsListView$AdapterDataSetObserver.onChanged(AbsListView.java:6720)
10-03 09:41:22.092: W/System.err(30914): at android.database.DataSetObservable.notifyChanged(DataSetObservable.java:37)
10-03 09:41:22.092: W/System.err(30914): at android.widget.BaseAdapter.notifyDataSetChanged(BaseAdapter.java:50)
10-03 09:41:22.092: W/System.err(30914): at android.widget.ArrayAdapter.notifyDataSetChanged(ArrayAdapter.java:286)
10-03 09:41:22.092: W/System.err(30914): at com.example.kitchenapp.OpenActivity.showData(OpenActivity.java:317)
10-03 09:41:22.092: W/System.err(30914): at com.example.kitchenapp.OpenActivity$showDB.doInBackground(OpenActivity.java:151)
10-03 09:41:22.092: W/System.err(30914): at com.example.kitchenapp.OpenActivity$showDB.doInBackground(OpenActivity.java:1)
10-03 09:41:22.092: W/System.err(30914): at android.os.AsyncTask$2.call(AsyncTask.java:287)
10-03 09:41:22.092: W/System.err(30914): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
10-03 09:41:22.092: W/System.err(30914): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
10-03 09:41:22.092: W/System.err(30914): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
10-03 09:41:22.092: W/System.err(30914): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
10-03 09:41:22.092: W/System.err(30914): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
10-03 09:41:22.092: W/System.err(30914): at java.lang.Thread.run(Thread.java:856)