Interesting discussion but how are we supposed to handle setContentView() (which calle the layour inflater, which instantiates views), taking a lot of time for complex layouts ?
In ICS+, if the main UI thread is stuck for more than approx 500ms the system great the app with a super aggressive: 08-15 15:33:24.804: I/dalvikvm(8550): threadid=3: reacting to signal 3 08-15 15:33:24.882: I/dalvikvm(8550): Wrote stack traces to '/data/anr/traces.txt' which further slow down app startup (writing on the SD Card take some time). So if setContentView() takes more than 500ms (not an uncommon occurence), then the system penalize the app even more, writting unwanted stack traces (the app is not ANRing at this stage, it is starting). Since is not safe to call the layout inflater in an AsyncTask to load it in the background while displaying some progress display, this result in Activities displaying a black screen until onCreate() finishes which may be quite some time if setContentView() cannot be executed fast. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en