Why Google chose Java as the programming language for Android?
I don't know the official reason. Partly, a VM allows them better options for security management. Partly, they probably wanted to leverage the experience of JavaME developers. Partly, Java is something they have supported before (see GWT).