I registered a ContentProvider in AndroidManifest.xml, and the ContentProvider.onCreate() was called even before the Application.onCreate(). I don’t understand this behavior, in my opinion, It’s more natural that Application.onCreate() be called before any of the components in the application. Could someone tell me the timing of Application.onCreate() and other components’ onCreate() gets called?
According a Google’s issue it’s how this should work (although documentation is wrong).
There’s another question that have a workarround that can help you.
It is exactly how it should work.
Application class was updated starting from Android 4.2 and it says that
Called when the application is starting, before any activity, service, or receiver objects (excluding content providers) have been created.