We may earn an affiliate commission when you visit our partners.
Tim Buchalka, Jean-Paul Roberts, Tim Buchalka's Learn Programming Academy, and David Reidy

What do you get in this course?

Read more

What do you get in this course?

In this course, you will discover the power of Android app development, and obtain the skills to dramatically increase your career prospects as a software developer. You’ll also have a head start over other developers using obsolete tools and earlier versions of Android.Android is continually being updated and you'll learn how to target but users of current versions of Android and older versions as well.With this course, you get the best of both worlds. You’re taught to write code for Android that works with the current version and older versions of Android by using the AppCompat library. That way, the apps you build will work with more versions of Android, giving you access to a wider audience of users.

Starting is easy because no previous programming experience is needed. NONE. If you do have it, great. Or maybe you just want to brush up on your Android development skills, and that’s fantastic too.

The course is presented using a combination of video, slides and diagrams, all designed to teach you everything you need to know.

Here is what just one student thinks about the course.

"If you are thinking of learning how to develop an Android app, you should be doing this course. It is comprehensive and covers so many aspects of programming an Android app. The best part is that Tim explains and teaches you how to become an independent developer. Since completing this course, I have gone on and developed my own application, which is now published on the Google Play Store. Developing an app takes patience, and it is definitely worthwhile going through all the content in this course." - Daniel Lee

Should you write Android apps that target only the very latest version of Android?If you have an iPhone or iPad, chances are high that you update each year to the latest iOS release - most users do.

The situation is completely different with Android. Only a relatively small percentage of Android users update their phones annually.

If you write your apps to only support the latest version of Android, you will ensure 95% of your potential user base will never see your app. The Google app store will only show apps that a users Android device can run, so if their device is not running the latest version of Android, they won't even be able to find your app on the Google play app store.

How do you make sure your app targets older versions of Android?

Android development is less about making sure you are creating apps that work with the latest version of Android, and more about ensuring your apps work with whatever versions of Android your users are running.

Google are aware of this problem and have something call the AppCompat library. Which is a way for you to ensure your apps work on older devices.

This is not enabled by default. Meaning that if you do not specifically configure your app to use this library and target older devices and newer ones, it either won't show up at all for users searching for your app, or older Android devices running your app might crash because they are trying to access features that do not exist in their version of Android.

The key is to use this library. And that's what you will learn in this course.

Does that mean that your apps can only use features from really old Android versions?

No it does not. The AppCompat library is constantly updated by Google. They go back and add features to the library which allows older Android devices to access newer features of Android.

But again, this is not turned on by default. You have to create and write your Android apps in a particular way to have your Android app be able to work correctly for current and older versions of Android.

Should you learn Kotlin?

Now that Google are pushing so hard for Android developers to use Kotlin, we are seeing a dramatic shift to Kotlin - It's similar to the iOS situation a few years ago with Objective-C when Apple released Swift.

Fast forward a few years and everyone is using Swift. This is starting to happen with Android app development. Developers who used to use Java are switching to Kotlin. You can see why Google want this to happen. They have been in court numerous times with Oracle (the owners of Java) relating to a dispute over the use of the Java language.

Google want developers to adopt Kotlin so that they don't have to worry about Java any more.

The recent Google I/O conference show mainly Kotlin code examples. You can see where we are heading. Kotlin is the future for Android app development.

Soon there will be few Java developers writing Android apps - they will be using Kotlin.

The good news is, we've bundled a complete Kotlin tutorial we wrote from scratch with the course. So not only do we use Kotlin in this course (teaching best practices along the way), but we also include a complete Kotlin tutorial as well. You will learn how to use the Kotlin language in this course.

This is what you’ll learn in the course:

· Develop apps for the very latest version of Android that also work on older Android devices running older versions of the Android operating system.

· Download, install and configure the necessary (free) software.

· Create your first app.

· Build a range of apps demonstrating key aspects of the Android framework.

· Test your apps on emulators or a real Android phone or tablet.

· You’ll learn Kotlin programming because Google are recommending and pushing adoption of Kotlin for Android app development. Included are Kotlin tutorial videos that will get you up to speed fast.

· Ensure your apps work with current and older Android versions on phones and tablets.

· Use Android studio 3.2, the newest version of Google's premier Android tool.

· Learn how to use databases, web services, and even get your apps to speak.

· Understand the all new Constraint layout, for "drag and drop" screen creation.

· Use powerful libraries of code to play videos, download website data, manipulate images, and a whole lot more.

To reinforce what you’ve learnt during the course, there are numerous challenges designed to help you understand each concept being taught. You’re also shown the solution to the challenge so you know you’re always on the right track.

The course is continually updated and enhanced, and fully supported as it evolves.

With many courses, it’s just set and forget. But not with this one. We’ve got a PROVEN track record of continually updating and adding new content. An example is Tim's Java Masterclass course which now has 77 hours of content and counting, and benefited a whopping 260,000 students.

And if you have any doubts about the course, be blown away by the glowing reviews left by students on this page.

What else will you learn?

You will learn how Android works at a deep level. Many courses show you how to create Android apps, allowing you to follow along clicking buttons but not really understanding what it happening.

To become a successful Android app developer, you need to understand why you are clicking that button, and how the Android operating system works and how the Android SDK and Framework works.

If you truly understand how something works, it means you can produce better quality apps, that have fewer bugs.

We don't promise that you are going to write a Facebook or Instagram clone app in this course - Courses that say they are going to teach you to create apps like that show apps with only the smallest amount of functionality, and usually don't explain anything in detail. There is no point going through Android training unless you can take that training and apply it into your own apps.This course is designed for you to follow along, but then to apply the information you have learned into your own apps.Your instructors are me, Tim Buchalka and Jean-Paul Roberts. Between them theyhave a collective 70 years of commercial software development experience, meaning you’re learning the right way to program to maximize your future development potential.

Here’s what’s important. There’re a lot of people teaching Android development who are not developers. We’re developers with many years’ experience with the Android platform, who also teach Android.

Importantly, our courses teach students the real-life skills needed to get those in-demand jobs or further your programming skills.

Take this course in confidence today knowing you have just found the BEST Android Kotlin course on Udemy. Don't delay. Every minute you’re not learning Android is a missed opportunity for that PERFECT high paying job.

Click the BUY NOW button and start learning. The world needs your new apps.

Enroll now

What's inside

Learning objectives

  • Be able to apply for android app development roles.
  • Learn the core android app development and kotlin skills to build real android apps.
  • Learn how to target current and older versions of android when writing your apps.
  • Understand how to create android apps using kotlin.

Syllabus

The Udemy Interface
Introduction to Android
FAQ
Introduction and Course Information
Read more
Introduction
Downloading and Installing the Necessary Tools
Windows - Install Android Studio
Mac - Install Android Studio
Linux - Install Android Studio
Configure Android SDK on all Three Platforms
Android Studio Settings
Enable VT-X in BIOS
Hello World Android App
Your Programming Careers Questions Answered
Access to Programming Career Q&A
Android Studio Templates
FAQ: Templates in Android Studio 3.6 and later
More on Android Templates
Hello World
Tour of Android Studio
Setting Up a Virtual Device
FAQ: Emulators on Windows 10 with AMD processor
Running on an emulator
Running on a physical Android device
Kotlin Tutorials
FAQ for Android Studio 3.3
Kotlin Tutorial Setup
Kotlin Tutorial 1
Variables and Types
More on Variables and Types
String Concatenation and Interpolation
val and var and more on Declarations
Conditions
Classes
Objects and Instances
Challenge
Lists
More on Lists
toString Challenge
for Loops
for Encapsulation and Private Properties
Overloading Functions
Inheritance
More on Inheritance
Inheritance Continued
Further Inheritance
while Loops
for Loop Revisited
do while Loop
Loop Challenge
The Button Counter App
Setup Play Project
The Constraint Layout
Constraints and Resizing
Positioning Widgets
Inner Lines within a Widget
Layouts on Different Devices
More on the Constraints
Layout Designer rendering error
FAQ: Baseline Constraints change
Baseline Constraints
Constraining Widgets
Add Scrolling Capabilities
Finish Layout
Coding Button Counter App
findViewById and r Class
Events and setonclicklistener
Testing and Challenge Time
Extending the Button App
Testing and Challenge
Fixing Kotlin Gradle Issues
The Activity Lifecycle
The Logcat Pane
Logging the Activity Lifecycle
Activity Lifecycle in Action
Saving and Restoring Instance State
Calculator App
Demo Calculator App
Calculator Interface Setup
Continue with Interface
Fine Tuning the Layout
Create Landscape Layout
Comparing FIles with Diff
Comparing Directories
Coding the Calculator
Add onClickListeners
Write Perform Operation Function
Bug Fix and Code Improvements
Bug Fix Challlenge and Save State
Widget References in Kotlin
Guidelines
Fixing Landscape Layout
Add Neg Button to Layout
Code Changes for Neg Button
Add Neg Button to Portrait
The Top 10 Downloader App

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Uses Android Studio 3.2, which allows learners to familiarize themselves with a tool that is widely used for developing, debugging, and testing Android applications
Covers the AppCompat library, which is essential for ensuring that apps function correctly across a wide range of Android versions, maximizing the potential user base
Includes a complete Kotlin tutorial, which allows learners to quickly get up to speed with the language recommended by Google for Android app development
Explores the all-new Constraint Layout, which is a modern approach to designing user interfaces in Android, offering flexibility and ease of use through drag-and-drop functionality
Teaches how to target older Android versions, which is important because a significant portion of Android users do not update to the latest version annually
Features Android Studio 3.2, which may not be the latest version, so learners should be prepared to adapt their skills to newer versions of the IDE

Save this course

Save Android App Development Masterclass using Kotlin to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Android App Development Masterclass using Kotlin with these activities:
Review Kotlin Fundamentals
Reviewing Kotlin fundamentals will help you grasp the concepts taught in the course more easily.
Browse courses on Kotlin Programming
Show steps
  • Review basic syntax and data types.
  • Practice writing simple Kotlin programs.
  • Familiarize yourself with Kotlin's null safety features.
Review 'Head First Android Development'
Reading 'Head First Android Development' will provide a solid foundation in Android development concepts.
Show steps
  • Read the chapters relevant to the course topics.
  • Complete the exercises and quizzes in the book.
  • Take notes on key concepts and best practices.
Review 'Kotlin in Action'
Reading 'Kotlin in Action' will provide a deeper understanding of Kotlin and its application in Android development.
Show steps
  • Read the chapters relevant to the course topics.
  • Try out the code examples in the book.
  • Take notes on key concepts and best practices.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Simple UI App
Building a simple UI app will help you practice using Android layouts and UI components.
Show steps
  • Design a simple user interface with a few buttons and text fields.
  • Implement event listeners for the buttons.
  • Display the results in the text fields.
  • Test the app on an emulator or physical device.
Practice Layout Design
Practicing layout design will improve your ability to create responsive and visually appealing UIs.
Show steps
  • Create different layouts using ConstraintLayout.
  • Experiment with different screen sizes and orientations.
  • Optimize layouts for performance.
Blog Post: Kotlin vs. Java
Writing a blog post comparing Kotlin and Java will solidify your understanding of the benefits of Kotlin for Android development.
Show steps
  • Research the key differences between Kotlin and Java.
  • Write a blog post highlighting the advantages of Kotlin.
  • Include code examples to illustrate the differences.
  • Publish the blog post on a platform like Medium or your own website.
Contribute to a Kotlin Android Library
Contributing to an open-source Kotlin Android library will provide valuable experience working on a real-world project.
Show steps
  • Find an open-source Kotlin Android library on GitHub.
  • Identify a bug or feature to work on.
  • Submit a pull request with your changes.
  • Respond to feedback from the maintainers.

Career center

Learners who complete Android App Development Masterclass using Kotlin will develop knowledge and skills that may be useful to these careers:
Android Developer
An Android developer creates applications for devices that run the Android operating system. This course is directly relevant, as it teaches the skills needed to build Android apps using Kotlin, the preferred language for Android development. You'll learn how to target both current and older versions of Android, which is crucial for reaching a broad audience. This course helps developers understand how the Android operating system works and how to write efficient code, while emphasizing the importance of the AppCompat library to ensure compatibility, all of which are vital for success in Android app development.
Mobile Application Developer
A mobile application developer designs and builds applications for mobile devices, with Android being a major platform. This course provides the critical knowledge needed to develop Android applications using Kotlin. You'll learn how to develop apps that work on both the latest and older Android versions, a skill that is incredibly important for mobile application development. This course helps you create applications and to understand the underlying framework. The skills gained from this course can help you build apps for a wide range of devices. It is an ideal course for an aspiring mobile application developer.
Software Engineer
A software engineer designs, develops, and maintains software systems, including mobile applications. This course is beneficial to a software engineer who wishes to specialize in Android app development. The course will help you gain expertise in Kotlin, which is a programming language vital for Android app development, and teaches you to build apps that work across various Android versions. This course will help you understand the Android operating system and how to write efficient, bug free code. It is a good course for software engineers who wish to broaden their skills in the mobile app space.
Application Programmer
An application programmer writes code to create software applications, and this course provides a direct path to becoming an Android application programmer. The course covers Android development with Kotlin, enabling you to build apps that target both current and older Android versions. The course teaches how to utilize the AppCompat library for compatibility along with an understanding of the Android SDK and framework. This course helps you gain practical skills in app development, equipping you with all the knowledge you need as an application programmer.
Software Developer
A software developer works on the creation of software, and this course directly benefits a software developer looking to specialize in Android app development. The course teaches you to use Kotlin to create Android applications and to understand the importance of supporting a wide range of Android versions. You will gain knowledge of the Android operating system and how to create bug free code, enhancing the skills vital for any software developer. If you are looking to develop apps for the Android platform, this course is directly applicable.
Mobile Software Developer
A mobile software developer specializes in creating software for mobile devices, including Android. This course is extremely helpful for those wishing to become a mobile software developer focusing on Android. A critical skill taught is the use of Kotlin to develop Android apps that work across different Android versions. The course helps you to learn the fundamentals of building robust apps by understanding the Android operating system, SDK, and framework, which are core components of mobile software development. This course is a great step for anyone who wishes to be a mobile software developer.
Mobile Applications Engineer
A mobile applications engineer designs and builds software for mobile platforms. This course is an excellent resource for aspiring mobile applications engineers who want to develop Android apps. The course provides hands on experience using Kotlin, the preferred language for Android development. By using this course, you may learn how to build high quality applications that are compatible with current and older versions of Android. This course also helps you understand the architecture of Android development. This makes it well suited for a career as a mobile applications engineer.
Applications Developer
An applications developer designs, develops, and tests applications, and this course helps you become an applications developer focused on the Android platform. The course focuses on the key skills for developing Android apps through the use of Kotlin. You will learn how to develop applications that support a wide range of Android versions, a necessary task for any applications developer. The course also provides a strong knowledge of the Android operating system, and the importance of writing bug free code. This course is very useful for anyone interested in applications development for Android.
Embedded Systems Software Engineer
An embedded systems software engineer designs software for specific hardware, which can include Android based platforms. This course may be useful for an embedded systems software engineer working with Android devices, as it provides specific skills with building Android apps using Kotlin. You will gain a greater understanding of the Android operating system, and how to write compatible code for older versions of Android. These skills are important for engineers working with Android devices, and this course may help in understanding the software aspects of embedded systems.
Backend Developer
A backend developer focuses on the server side of applications. This course may help a backend developer who needs to understand how Android applications consume APIs and backend services. You will gain some awareness of how Android apps are built using Kotlin, and how they operate on both current and old versions of Android. This course can be helpful for backend developers working with mobile APIs, helping them build compatible backend solutions.
Technical Consultant
A technical consultant provides expert advice on technology. This course may be helpful to a technical consultant who needs to advise clients on Android app development. This course provides hands on experience with Kotlin, and teaches how to develop apps that work with both current and older versions of Android. A technical consultant may find that knowledge of Android development, as well as its limitations, will help in their role.
IT Support Specialist
An IT support specialist provides technical assistance to users. This course may be useful to an IT support specialist helping users with Android devices or applications, as it provides a basic understanding of Android application development. The course teaches about Android versions and their compatibility, which can aid in troubleshooting app-related issues. An IT support specialist may find that this course helps them to better understand some of the challenges that arise with Android devices and applications.
Web Developer
A web developer creates websites and web applications. This course may be helpful for a web developer who wants to understand how Android apps interact with web services or display web content. The course provides an introduction to Android app development using Kotlin, and shows how to build applications that work across different Android versions, helping web developers gain insights into the mobile side of their field. This course may also help web developers expand their understanding of the mobile app space.
Database Administrator
A database administrator manages and maintains databases. This course may be useful for a database administrator who needs to understand how mobile apps interact with databases. You will see how apps are built on Android using Kotlin and how they are made compatible with older versions of Android. This course will help database administrators become aware of the data needs of mobile applications. This course might be helpful for a database administrator who wishes to understand the demands of the mobile app world.
Technical Writer
A technical writer creates documentation for technical products. This course may be helpful for a technical writer who needs to document Android applications or their development processes. This course provides an introduction to Android app development using Kotlin and shows how to target different versions of Android. A technical writer may find it helpful to understand the development process when creating documentation. This course may help them to produce documentation that is more user friendly.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Android App Development Masterclass using Kotlin.
Provides a comprehensive guide to Kotlin, covering everything from basic syntax to advanced features. It's particularly useful for understanding Kotlin's design principles and how it compares to Java. This book valuable resource for both beginners and experienced programmers looking to master Kotlin for Android development. It adds depth to the course by providing real-world examples and best practices.
Uses a visual and engaging approach to teach Android development concepts. It's particularly helpful for beginners who are new to Android. While it may not cover Kotlin specifically, it provides a solid foundation in Android fundamentals. This book is more valuable as additional reading to supplement the course material.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser