1. Android 2.2 (Froyo)
Android 2.2 (also called Froyo, released in May 2010) included several new features and enhancements . In subsequent sections we’ll discuss Android 2.3 (Gingerbread) and Android 3.0 (Honeycomb).
New Developer Features in Android 2.2
The Android Cloud to Device Messaging (C2DM)
service allows app developers to send data from their servers to their
apps installed on Android devices, even when the apps are not currently
running. The server notifies the apps to contact the server directly to
receive updated app or user data. Android Application Error Reports,
which can be accessed by logging into your Android Market publisher
account, enable you to receive app-crash and app-freeze reports from
your apps’ users.
Android 2.2 also includes several new APIs that allow you to easily add functionality into your apps (Fig. 1). We also use web services. With these, you can create mashups,
which enable you to rapidly develop apps by combining the complementary
web services of several organizations, possibly with information feeds
of various types (such as RSS, Atom, XML, JSON and others) (Fig. 2). For example, www.housingmaps.com uses web services to combine Craigslist (www.craigslist.org)
real-estate listings with the capabilities of Google Maps—the most
widely used API for mashups—to show the locations of apartments for rent
in a given area.
API | Description |
---|
Apps on external storage | Apps can be stored on an external memory device rather than just the Android device’s internal memory. |
Camera and camcorder | New
features include the Camera Preview API which doubles the frame rate
(now 20 frames per-second), portrait orientation, zoom controls,
exposure data and a thumbnail utility. The new CamcorderProfile classes can be used in apps to determine the camcorder hardware capabilities of the user’s device. |
Data backup | Back-up data to the cloud and restore data after a user resets the device to the original factory settings or switches devices. |
Device policy management | Create administrator apps to control device security features (e.g., password strength). |
Graphics | Access
to the OpenGL ES 2.0 graphics APIs which were previously available only
through the Android NDK—a toolset that allows you to use native code
for performance-critical app components (developer.android.com/sdk/ndk/overview.html). |
Media framework | APIs
for audio focus, auto-scanning files to the media database (e.g., audio
and video files), detecting sound loading completion, auto-pause and
auto-resume of audio playback, and more. |
UI framework | The UiModeManager
car mode, desk mode and night mode controls enable you to adjust an
app’s user interface, the scale gesture detector API improves
multi-touch events, and the bottom strip of a TabWidget is now customizable. |
Web services source | How they’re used |
---|
Google Maps | Mapping services |
Facebook | Social networking |
Foursquare | Mobile check-in |
LinkedIn | Social networking for business |
YouTube | Video search |
Twitter | Microblogging |
Groupon | Social commerce |
Netflix | Movie rentals |
eBay | Internet auctions |
Wikipedia | Collaborative encyclopedia |
PayPal | Payments |
Last.fm | Internet radio |
Amazon eCommerce | Shopping for books and more |
Salesforce.com | Customer Relationship Management (CRM) |
Skype | Internet telephony |
Microsoft Bing | Search |
Flickr | Photo sharing |
Zillow | Real-estate pricing |
Yahoo Search | Search |
WeatherBug | Weather |
Figure 3 lists directories where you’ll find information about many of the most popular web services.
2. Android 2.3 (Gingerbread)
Android 2.3 (Gingerbread),
released in December 2010 (with Android 2.3.3—a minor update—released
in February 2011), added more user refinements, such as a redesigned
keyboard, improved navigation capabilities, increased power efficiency
and more. Figure 4 describes some of the key new user features and updates.
Feature | Description |
---|
Power management | Apps
that consume processor power while running in the background, or are
awake longer than normal, can be closed by Android (if appropriate) to
save battery power and improve performance. Users can also view the apps
and system components consuming battery power. |
Manage Applications shortcut | The Manage Applications shortcut in the Options
menu on the Home screen allows users to view all apps that are running.
For each app, you can view the amount of storage and memory it’s using,
permissions the app has been granted (whether it can read the user’s
contact data, create Bluetooth connections, etc.) and more. Users can
also “force-stop” the app. |
Near-field communications | Near-field communication (NFC)
is a short-range wireless connectivity standard that enables
communication between two devices, or a device and a tag (which stores
data that can be read by NFC-enabled devices), within a few centimeters.
NFC-enabled devices can operate in three modes—reader/writer (e.g.,
reading data from a tag), peer to peer (e.g., exchanging data between
two devices) and card emulation (e.g., acting like a smart card for
contactless payments). NFC-enabled Android devices can be used in
reader/writer and peer-to-peer modes. NFC support and features vary by
Android device. |
Improved Copy and Paste functionality | You
can touch a word to select it, drag the markers to adjust the
selection, copy the text by touching the highlighted area, then paste
the text. You can also move the cursor by dragging the cursor arrow. |
Camera | Apps can access both rear-facing and front-facing cameras. |
Internet calling | Android
includes Session Initiation Protocol (SIP) support—an Internet
Engineering Task Force (IETF) standard protocol for initiating and
terminating voice calls over the Internet. Users with SIP accounts
(available through third parties) can make Internet voice calls to other
contacts with SIP accounts. Not all Android devices or carriers support
SIP and Internet calling. For a list of SIP providers, see www.cs.columbia.edu/sip/service-providers.html. |
Downloads app | Users can access files downloaded from e-mail, the browser, etc. through the Downloads app. |
The platform also added several new developer features for enhanced communications, game development and multimedia (Figure 5). For further details about each of these features, go to developer.android.com/sdk/android-2.3-highlights.html.
Feature | Description |
---|
Internet telephony | The
new SIP support allows you to build Internet telephony functionality
into your apps—namely, making and receiving voice calls. |
Near-field communications API | Build
apps that read and respond to data from NFC tags or devices. Android
2.3.3 apps can also write to tags and work in peer-to-peer mode with
other devices. Note that NFC support varies by Android device. |
Audio effects API | Add
equalization (for adjusting bass or treble), bass boost (increasing the
volume of bass sounds), headphone virtualization (simulated surround
sound), and reverb (echo effects) to an audio track or across multiple
tracks. |
New audio formats | Built-in
support for Advanced Audio Coding (AAC—a successor to MP3) and Adaptive
Multi-Rate Wideband encoding (AMR-WB) for capturing high-quality audio. |
New video formats | Built-in support for VP8 open video compression with the WebM open-container format. |
Camera API | Use
the enhanced Camera API to access rear- and front-facing cameras on a
device, determine their features and open the appropriate camera. |