We know that when the app do some long process like downloading some information from internet it could show a splash screen before loading the application and when the app
If you call some "heavy code" in onCreate the screen will appear black until it is done loading. You might consider using AsyncTask and make the onCreate handle setContentView etc, and make the AsyncTask handle "the heavy code".