android.os.NetworkOnMainThreadExceptionとは?

バスくる1.0.6で、ようやく正常動作するようになった、、、とりあえず一安心。
度重なるアップデートで、バスくるユーザーには迷惑かけました。

不安定なバージョンをリリースしてしまって、ユーザー数減っただろうな〜と思いながらデベロッパーコンソールを確認。
するとクラッシュレポートが飛んできてる!?

android.os.NetworkOnMainThreadException
at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1126)
at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
at java.net.InetAddress.getAllByName(InetAddress.java:214)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
at org.buskuru.tokyu.util.HttpUtil.getHtml(HttpUtil.java:215)
at org.buskuru.tokyu.activity.StationListActivity.convertStationMap(StationListActivity.java:108)
at org.buskuru.tokyu.activity.StationListActivity.onItemClick(StationListActivity.java:78)
at android.widget.AdapterView.performItemClick(AdapterView.java:298)
at android.widget.AbsListView.performItemClick(AbsListView.java:1163)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:2936)
at android.widget.AbsListView$1.run(AbsListView.java:3628)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4830)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:792)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:559)
at dalvik.system.NativeStart.main(Native Method)

何ですかコレ!?

調べてみると、Android3.0以上だと発生するエラーらしい。
メインスレッド(画面)からネットワーク処理するのはダメらしい。

対策はココに書いてある。
僕のスマホはAndroid2.2だから、上位バージョンで起こるエラーは、あまり気にしてなかったなあ。

3.0端末持ってないから、エミュレーターで試すか。。。