Android is the most popular mobile operating system around the world. Developers who have some background with Android can access a full 66% of the worldwide market. But learning to code in Android can prove surprisingly difficult.
However, free online android programming course options are available. In this article we’ll narrow down the options to the best of the best. We’ll focus on a course’s scope, resources and how up to date it is.
7. Codecademy’s Learn Java Course
Codecademy mixes free and paid classes together. As such, one can’t expect to follow Android development from start to finish there. Eventually a course will reach options which require payment. But their Java course is one of the best ways to introduce oneself to the language for free.
The course teaches students the fundamentals of Java development. It’s important to note that most aspects of GUI programming aren’t included. GUI elements are where standard Java and Java for Android diverge.
The Learn Java course will take students to the point where Java skills can work with either desktop or Android platforms. The lower rank is due to the class functioning more as a prerequisite for further Android development.
It takes one just beyond the starting point of Android development. But it’s a free online Android programming course which everyone unfamiliar with Java should consider.
6. Vogella’s Android Development with Android Studio
Vogella offers some of the most extensive online Android courses. All of them are free and of consistently high quality. But Android Development with Android Studio is especially notable among the free online Android programming course options.
The course is notable for the special attention given to the Android Studio IDE. Android Studio is the primary method for compiling raw Java code to a full Android app. But this complex tool is seldom covered in depth within other Android courses.
Vogella’s course takes students through almost every aspect of Android Studio development. The course even shows how to integrate Android Studio with other services and applications. One can consider the course as the first step to leveraging existing Java skills into full Android development.
The entirety of the course is through a basic tutorial structure. As such, there’s no formal exams or tests.
5. Coursera’s Programming Mobile Applications for Android Handheld Systems
Coursera offers a wide variety of classes related to Android development. Programming Mobile Applications for Android Handheld Systems is one of their best free options. The course assumes some basic proficiency with both Java and Android Studio.
It takes a student from those basic subjects to real app development. The class structure includes both video lectures and graded assignments. Students can expect to build a full Android app by the fifth week.
One of the most notable parts of the class is the final assignment in week five. The final assignment involves creating an Android app which goes beyond the simple frameworks covered in classes so far. By the end of Programming Mobile Applications for Android Handheld Systems one will have all basic skills needed for Android development.
Exam: No (But includes graded assignments).
4. Hong Kong University’s Introduction to Mobile Application Development using Android
The Hong Kong University of Science and Technology provides a similar course to what one might find on campus. Students can expect the course to take six weeks to complete. It does assume some basic understanding of Java programming. But completing any of the introductory options in this list will prepare one for the course.
It ranks among the best free online android programming course options due to sheer scope. Students won’t simply get basic information on GUI structure. The course fully illustrates some of the more complex areas of Android programming.
The Introduction to Mobile Application Development using Android quickly transitions from the basics to multimedia and 2D graphical element control. It ranks among the best free online android programming course options to learn what’s happening within Android itself. And it’s among the more challenging courses. But it provides information one simply won’t find elsewhere.
3. Treehouse’s Build a Weather App
Treehouse’s courses aren’t fully free to use. Full unlimited access does require a monthly subscription. However, the free seven day membership is enough time to complete most of their Android courses.
And in particular one can work on their Build a Weather App course. It only takes an estimated 267 minutes to complete. But in that time one will master some of the most useful aspects of Android programming.
The course is technically focused on creating a simple weather App. But the importance of this lesson comes from real world use of theoretical principles. A weather app uses most of the same libraries as larger Android programs. Treehouse essentially teaches students how to build these large programs by illustrating the process with a weather app.
Cost: Free for seven days (With $25 option for continued access).
2. Vogella’s Android Memory and Performance Optimization Course
Past a certain point the best free online android programming course options relate to specialization. Students taking Android memory and performance optimization should already have a solid understanding of the basics.
The class shows students how to use those existing skills in a far more efficient way. By the end of the course a student should understand how to optimize any code. This essentially opens up lower end platforms to students.
Android Memory and Performance Optimization Course is fairly short and doesn’t have formal tests or exams. However, one will find code samples which illustrate the topics.
Cost: Free (With optional donations).
1. Udacity’s Developing Android Apps: Android Fundamentals
Developing Android Apps: Android Fundamentals uses the Android platform to teach Android development. One of the course’s more notable elements comes from use of an official Android app.
It earns top place among free online android programming course options for multiple reasons. Its teaching app is only one example of the overall polish demonstrated by Android Fundamentals. The schedule’s length also demonstrates how advanced the course is.
Students should prepare to dedicate around 60 hours to the course. And they should come in with at least a basic understanding of Android programming. Most of the other items can serve as a good foundation for Android Fundamentals.
Android Fundamentals is something of a misnomer. The fundamentals refers to some programming subjects which are quite advanced. But they serve as a fundamental part of overall Android development.
The class does allow students a chance to slow down and take things at their own pace. However, it’s also important to note that this demonstrates a lack of formal oversight. The class lacks formal grading to gauge a student’s progress.
But that oversight is available on completion of the course. It serves as a prerequisite to the more formally structured Nanodegree program.
Certificate: No (But serves as a prerequisite for the Nanodegree program).
In conclusion, it’s clear that Android development is a complex subject. No one course can cover every element of Android development. But one can also see that it’s possible to navigate the options to get a free education.
Of course discussion helps any educational experience. People who’ve tried these courses should post about their experiences. In doing so they can help others explore this fascinating subject.