I registered a ContentProvider in AndroidManifest.xml, and the ContentProvider.onCreate() was called even before the Application.onCreate(). I don\'t understand this behavio
It is exactly how it should work.
Documentation of Application class was updated starting from Android 4.2 and it says that Application#onCreate()
Called when the application is starting, before any activity, service, or receiver objects (excluding content providers) have been created.
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.