All you really need to start Android development is a computer (Windows, Linux or Mac). You can download the Android SDK for free from Google, and get started developing. You don't even need a phone - Android has an emulator you can run on your PC for testing apps.
The time requirement depends on your prior knowledge of programming. If you're already familiar with Java, it shouldn't take very long to get started with Android at all. A couple of weeks should be enough to play around with the sample code and build your first decent app
If you haven't had any programming experience though, it will take a lot longer to get familiar with the development process. Taking an introductory course in Java programming could be helpful before looking at Android itself.
Generally I'm not a big fan of ebooks for teaching programming - the best way to learn is by actually doing it. But if you're looking for some published insights from an experienced developer, I've found Richard Harris' ebook has some good anecdotal advice. He covers the process of curating ideas, and actually getting the app from an idea to reality.