[Coursera]Programming Mobile Applications for Android Handheld Systems #5 - 2014-01-21@University of Maryland
Week 5 内容：
Let's keep on learning together! This week we're going to dig a little deeper and go beyond the basic things that most Android novices know. This week we have 5 sets of lectures.
1. UserNotifications. How do you let users know what's happening inside your app. You could just write something to a text view, but that would essentially take up a bunch of space for interactions that don't happen that often. Instead, Android provides 3 features for interacting with users, outside your app's normal UI.
2. BroadcastReceivers. We've already talked about the first fundamental Android component, the Activity class. This week we'll talk about the second, the BroadcastReceiver class. BroadcastReceivers allow apps to listen for and respond to events.
3. Threads, AsyncTasks and Handlers. Modern handheld devices increasingly contain multiple computing cores. This lectures explains what you need to know to spread your app's work across these multiple cores.
4. Alarms. Alarms allow a component to schedule work to be done at some point in the future. For example, you could use Alarms to wake up a component every night at midnight to back up device data to a networked server.
5. Networking. In this lecture we'll discuss the basics of making HTTP requests over the Internet - a fundamental part of connecting your device to the cloud.
Week 5 需上传：
As always, we have a quiz this week.
In this week's lab you'll put most of these things to work, building an app that uses an AsyncTask to download data from the Internet and then display it. Because downloading can take some time, the user might exit this app while the download is still in process. Therefore, you will use a BroadcastReceiver to determine whether the user is interacting with your app when the download finishes and, if not, you'll create a Notification to inform the user that the download has finished. If you get all this done, you can add Alarms to proactively download the data before the user even knows they need it.