Building an Android app comes down to two major skills/languages: Java and Android. Java is the language used in Android, but the Android part encompasses learning XML for the design of the app, learning the concepts of Android, and using the concepts logically with Java.
Once you learn Java and XML; XML is really easy to get used to, and you should learn the language as you program your app rather than learning it beforehand like you would with Java. You need to learn how to connect these two using Android principles.
Now for a total beginner, we recommend YouTube tutorials to get the basic idea of how to install Eclipse (the Integrated Development Environment, or IDE, for Java) and the Java Development Kit (JDK). It also helps to get the basic idea of syntax behind Java concepts, such as for loops and if statements.
Here is an example: Click to watch video
But from then on, after you have learned the very basics, we HIGHLY recommend ditching the YouTube tutorials in favor of a book or a lecture series. YouTube tutorials very often do NOT give intuition behind important concepts.
Keep these following things in mind as you venture on your journey of building a successful Android App.
1. You need to learn Java, there is no way around it. Knowledge will only help you through the process of building an app.
2. Android part encompasses learning XML for the app design, understanding concepts of Android and using said concepts programmatically with Java.
3. Beginners should probably use an IDE. It is really useful and lets you experiment.
4. Building your first app is time-consuming: it won’t happen overnight. This is not a project for those looking for a shortcut to success.
5. When stuck on a problem which will inevitably happen, turn to Stack Overflow. Utilize Google, and have no shame in asking assistance from the experts.
6. Before hitting the market and start developing an application you should conduct a proper market research. Analyzing the market thoroughly will give you insights about your competitors, their strategy, their strengths and weakness too. This information will prove to be useful as you can avoid repeating the mistakes your competitors made.
7. Defining your target audience is very important as the audience plays a huge impact on the development of your mobile application. All these questions such as who will be using this app, and how is it going to help them, should be answered well before hand.
Best Of Luck.