In Intent,there is a constant named ACTION_DOCK_EVENT
Added in API level 5
Broadcast Action: A sticky broadcast for changes in the physical docking state of the device.
What do you mean by docking state?
Android devices can be docked into several different kinds of dock devices . These include car or home docks and digital versus analog docks. So when a dock of the device is changed then it throws an intent of ACTION_DOCK_EVENT
If a device is docked, it can be docked in any one of four different type of dock:
resource here