In my experience, this usually occurs because you naively use a seemingly simple API function that only supports 4.0, but would take significant time to backport. (I've done this accidently with the DownloadManager API when I needed to support pre-Gingerbread apps).