Android Entwicklung / Development – NetworkOnMainThreadException

Mit Android 3.0 und höher sind standardmäßig striktere Prüfungen aktiv, der sogenannte StrictMode. Dieser prüft auf Vorgehensweisen, die man besser nicht nutzt.
Mich hat das mit einer NetworkOnMainThreadException bei meiner ProEinkaufsliste getroffen, zwar nur bei einer Stelle (Barcodescanner) aber trotzdem ärgerlich. Dank des Galaxy Nexus ist das Debugging nun auch unter Android 4.0 möglich. Im Netz wird empfohlen, alle Netzzugriffe per Handler oder AsyncTask durchzuführen, was ich eigentlich schon tat, aber eben nicht konsequent genug. Jetzt sind alle Netzzugriffe auch wirklich in der doInBackground-Methode und in der onPostExecute-Methode alle UI-Zugriffe.
Den Fehler habe ich bereits behoben und wieder was dazugelernt. 🙂 Die bereinigte Version kommt diese Woche noch…

With Android 3.0 and higher strictmode is on by default. This mechanism checks automatically for design flaws in your code. My Little Shoppinglist Pro crashed when using barcodescan and Android > 3.0 with a networkonmainthreadException. I thought I moved all networkcode to a asynctask, but I didn’t 🙂 Now I clearly separated all networkcode (now in doInBackground) from ui code (onPostExecute) and it’s running 🙂
Bug is fixed in the new version released later this week.

Leave a Reply