Android Development Getting Started - thelastmile/FreeCodeCamp GitHub Wiki

Getting started with Android Development

Today Android has become the leading Operating System being used in various devices, like mobile phone, tablets, watches, TV, cars and many more. It powers more than a billion devices all over the globe. It is based on the Linux kernel. Android has been the best selling OS on tablets since 2013, and on smartphones it is dominant by any metric.

Prerequisites

For getting started with Android development, you should already know about a few things:

  • Java: Android development is mostly done in Java. It's not a difficult language to learn, but knowing how it applies to Android development can be confusing without a firm foundation in the language. Android Java is not exactly standard Java, but learning standard Java will make it much easier for you to pick up Android development. For the specific topics in Java that would be helpful in this case, you can refer this link.
  • XML: Knowing XML can be useful in a number of tech-related fields and Android is no exception. In particular, XML files make it easier to declare UI elements in the apps you create. Past experience is a big plus.
  • Perseverance: Lastly, learning the ins and outs of the Android development toolkit is going to take time. Learning how to create a quality app is going to take even more time. Don't rush. Keep at it and focus your mind on the long term. If you don't, you'll be frustrated and want to give up.

Tools

At first, make sure you have all the tools in your system. Please note that the packages required to proceed with learning Android development require downloads of size more than 1 GB and the installation would take about 2 to 3 hours of your time. The things you'll need to start building applications for Android are:

  • Latest version of the Java JDK: Here is a guide to install Java on your computer.
  • Android Studio: Here is the official guide to install Android studio.
  • If possible, an Android device. If you don't, it is fine too, since you can run an emulator to run an Android virtual device on your computer itself.

Tutorials

Some basic courses and tutorials for learning Android development:

  • Official Android Developer Guide: For beginners, this site has a comprehensive training section that ranges from setting up your environment and building your first Android app all the way to distributing a finalized app and making money on the Play Store. For advanced users, the API guides and references will always be there to help you find the most efficient solutions to your app-development troubles. This guide also contains links to the specific video courses required by the developers' needs for advanced development topics.
  • CodePath Android Cliffnotes
  • TutorialsPoint
  • Vogella

Resources

Here are some useful links to the libraries for Android development:

So, what are you waiting for? Just start right away! :smiley: