We may earn an affiliate commission when you visit our partners.
Jim Wilson

Android provides a powerful threading model and rich background execution capabilities. In this course, you'll learn how to leverage these capabilities through the use of AsyncTask, Handlers, Services, Job Scheduler, Broadcast Receivers, and more.

Read more

Android provides a powerful threading model and rich background execution capabilities. In this course, you'll learn how to leverage these capabilities through the use of AsyncTask, Handlers, Services, Job Scheduler, Broadcast Receivers, and more.

Modern applications include many rich time-based and background behaviors that extend well beyond direct interaction with the user. In this course, Leveraging the Power of the Android Platform, you'll learn how to use the powerful capabilities of the Android platform to create applications that incorporate these and other related behaviors. First, you'll explore how to utilize the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience. Next, you'll discover how to use Android Services for background work that can be safely performed even after the user exits your application. After that, you'll learn how to use the Android Job Scheduler to create background jobs that rely on run criteria such as networking and power requirements, and delegate those jobs to the Android system for management and execution. Additionally, you'll cover how to use Android Broadcasts and Broadcast Receivers to publish information from one application, and allow other applications running on the same device to subscribe to that information. Finally, you'll delve into scheduling time-sensitive tasks using the Android Alarm Manager. By the end of this course, you'll have the skills and knowledge to create your own Android applications that incorporate the rich time-based and background execution behaviors required to create a successful application.

What's inside

Syllabus

Understanding the Android Threading Model
Performing Background Work with Services
Scheduling Background Work with JobScheduler
Working with Broadcast Receivers
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Teaches leveraging the rich Android platform to enhance functionality of Android applications
Builds skills in leveraging Android's threading model, Handlers, and Services for long-running work and background execution
Covers background work scheduling using JobScheduler and Broadcast Receivers for publishing and subscribing to information between applications
Develops expertise in scheduling time-sensitive tasks using Android's Alarm Manager
Requires knowledge of Android programming and basic Java background

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Mastering android background execution

According to students, this course provides a strong foundation in Android's threading model and background execution capabilities. Learners particularly appreciate the clear explanations of complex topics like Services and JobScheduler, often finding the practical examples highly beneficial for real-world application development. While it offers comprehensive coverage of essential mechanisms, some mention that it assumes a foundational understanding of Android development, which might make it challenging for absolute beginners. Overall, it's considered a valuable resource for mastering crucial Android background tasks.
Explores a wide array of Android background processing techniques.
"The breadth of topics, from Handlers to Alarm Manager, ensured I got a full picture of background tasks."
"It covers all the essential mechanisms needed to create robust Android applications with background logic."
"I was impressed by the detailed explanations of each type of background execution option."
Provides actionable, real-world examples for immediate use.
"The hands-on examples for JobScheduler and Broadcast Receivers were incredibly useful for my projects."
"I appreciated how the course moved beyond theory to show practical implementations I could apply."
"The coding exercises helped solidify my understanding and enabled me to build functional features."
Clearly explains complex Android threading and background execution.
"I finally understood the differences and best uses for AsyncTasks versus Services after this course."
"The instructor did an excellent job breaking down the nuances of Android's threading model."
"I gained a much clearer understanding of how to manage background work efficiently without impacting UX."
Aims at developers with existing foundational Android knowledge.
"As someone new to Android, I found myself needing to pause and look up basic concepts frequently."
"This course is ideal if you already have a grasp of basic Android components and Java/Kotlin."
"I would recommend having some prior experience with Android development before diving into this."

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 Leveraging the Power of the Android Platform with these activities:
Review Java threading concepts
Refreshes students' understanding of fundamental Java threading concepts.
Show steps
  • Review Java tutorials on threading
  • Practice creating and managing threads in a simple Java program
Read 'Android Programming: The Big Nerd Ranch Guide'
Provides a comprehensive understanding of Android programming concepts and practices.
Show steps
  • Read the book's chapters on background processing
  • Complete the exercises and examples provided in the book
Discuss the benefits of using Broadcast Receivers
Fosters understanding of Broadcast Receivers' role in facilitating communication between applications.
Show steps
  • Join a study group or online forum
  • Participate in discussions on the benefits of Broadcast Receivers
  • Share examples and experiences using Broadcast Receivers
Three other activities
Expand to see all activities and additional details
Show all six activities
Use AlarmManager to schedule time-sensitive tasks
Develops proficiency in scheduling time-sensitive tasks using AlarmManager.
Show steps
  • Create an AlarmManager object
  • Create a PendingIntent for the task
  • Schedule the task using the AlarmManager
Perform background tasks using Handlers
Develops proficiency in using Handlers for background tasks.
Browse courses on Concurrent Programming
Show steps
  • Create a Handler object
  • Create a Runnable object
  • Post the Runnable object to the Handler
Implement a Service for long-running tasks
Provides hands-on experience in creating and managing Services for background tasks.
Show steps
  • Create a Service class
  • Implement the Service's lifecycle methods
  • Bind to the Service from an Activity

Career center

Learners who complete Leveraging the Power of the Android Platform will develop knowledge and skills that may be useful to these careers:
Android Developer
Android Developers are responsible for developing and maintaining applications for the Android operating system. This course will help you build a foundation in the skills you need to be successful in this role, including how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Mobile Application Developer
Mobile Application Developers create applications for mobile devices, including smartphones and tablets. This course will introduce you to the skills you need to be successful in this role, including how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Software Developer
The Android platform is a key part of the modern mobile application landscape. This course will introduce you to the skills you need to create successful Android applications, including how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course will help you build a foundation in the skills you need to be successful in this role, including how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Computer Programmer
Computer Programmers write and maintain the code that makes computers and software work. This course will introduce you to the skills you need to be successful in this role, including how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Web Developer
Web Developers design and develop websites and web applications. This course may be useful for Web Developers who are interested in learning how to develop Android applications.
Database Administrator
Database Administrators manage and maintain databases. This course may be useful for Database Administrators who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Data Scientist
Data Scientists use data to solve business problems. This course may be useful for Data Scientists who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Systems Analyst
Systems Analysts design and implement computer systems. This course may be useful for Systems Analysts who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Network Administrator
Network Administrators manage and maintain computer networks. This course may be useful for Network Administrators who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Information Security Analyst
Information Security Analysts protect computer systems from unauthorized access and use. This course may be useful for Information Security Analysts who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Computer Systems Analyst
Computer Systems Analysts analyze and design computer systems. This course may be useful for Computer Systems Analysts who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Business Analyst
Business Analysts analyze and improve business processes. This course may be useful for Business Analysts who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Project Manager
Project Managers plan and execute projects. This course may be useful for Project Managers who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.
Technical Writer
Technical Writers create and maintain documentation for technical products. This course may be useful for Technical Writers who are interested in learning how to use the Android threading model, AsyncTasks, Handlers, and StrictMode to effectively perform long-running work in a way that doesn't impact the user experience.

Reading list

We've selected eight 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 Leveraging the Power of the Android Platform.
Introduces the fundamentals of Android programming and serves as a foundation to the course. It covers a range of topics from establishing Android’s relationship with Java to the creation of more advanced features like touchscreens and sensors.
Provides an in-depth exploration of the Android SDK and the Java programming language used in Android development. It serves as a good companion to the course and is commonly used as a textbook in academic settings.
Delves into advanced Android programming concepts, such as threading, services, background processing, and more. It complements the course well, providing additional depth and examples of more complex Android development scenarios.
Covers a wide range of Android development topics, including threading, services, and background processing. It offers a comprehensive overview and serves as a useful reference tool.
Provides a comprehensive guide to Android programming, with a focus on the latest Android versions and features. It offers a good overview of the topics covered in the course and can serve as a useful reference resource.
Focuses on Gradle, the build tool used in Android development. It offers a comprehensive overview of Gradle and its features, including dependency management, build customization, and testing.
Provides a comprehensive guide to Kotlin, a modern programming language that is increasingly adopted in Android development. It covers Kotlin's syntax, features, and best practices.
Covers testing techniques for Android applications using Espresso and UI Automator, two popular testing frameworks. It offers practical guidance on writing and executing automated tests for Android apps.

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