According to the documentation, this is the call order:
Ext.app.Controller.init() is called before the Ext.app.Application.launch() function is executed, so it gives you a hook point to run any code prior to the Viewport being created.
Ext.app.Controller.onLaunch() is called after the viewport is created and after the Ext.app.Application.launch() method is executed.