What Both Users and Developers Need to Know About Android 2.3 Gingerbread’s SDK

So the rumors were true: it’s December 6th and we’ve just been showered with releases about Android 2.3, and the Google Nexus S. But if you relied only on the YouTube video to see what changes have been made that would get you excited, you probably left unsatisfied. Taking a look at the list of changes in the SDK will give you a better idea, but I’m sure many of you can’t be bothered. How about I handle that for you?

Developers will always be the first party to learn about more of the unique things that you can do with Android in ways that users don’t want to or need to understand. The overview video speaks of a number of changes pertaining to better multimedia support, better support for game development, new communications frameworks, and a lot more. But what do they mean for users? And will we see anything take advantage of this new stuff in the final release of Android 2.3?

New Gaming Support

Gyroscopes, Accelerometers, Barometers, oh my!

Developers: Google’s added a new API to read several sensor types: your “accelerometer” is so much more than that these days, and with the advent of gyroscopes, barometers, and the like, developers need a way to access this new range of information. You’ll also get the remaining set of methods to round out Android’s OpenGL ES 2.0 support.

Users: This means – should your favorite developers take advantage of the new APIs – your games will react more responsively to your device’s movement and should afford developers greater control over things such as sensitivity. This would be good for games like Raging Thunder where folks feel that – even with the option to tone things down – things are just a bit too sensitive.

UI Frameworks Overhauled

Developers: If you haven’t already made the most out of Android to make your applications and games look prettier, Google’s adding even more methods, listeners, and attributes to easily give you the ability to change the way your app’s notifications look, to help more accurately track finger motions for smoother gaming performance, and more.

Users: Your games will be more responsive, your applications will do things they couldn’t before (like overscrolling effects, something that was only available system wide if you had a Samsung Galaxy S or other phones with such customizations), and you’ll just be afforded a better user experience overall.

New Communications Support

Near Field Communications

Developers: When we start to see devices with NFC chips installed – something the Google Nexus S will be equipped with – you’ll be able to create unique applications and experiences for users through minimal distance engineering. The most obvious use-case starting out will be the prospect of mobile payment systems, something carriers have already come together for to make a reality. But Google’s giving you the tools to do what you want with an NFC-equipped device.

Users: You’ll soon be able to pay for your round of groceries, household essentials, movie rentals, or whatever just by placing your phone near a stationary NFC unit for wireless payments without a credit card. And if developers get creative enough, a whole smattering of things are possible: NFC-based home and car security is one thing I’m sure we’ll be seeing pop-up somewhere down the road. Let your imagination run wild.

Built-in SIP VOIP Support

Developers: An entirely new SIP protocol stack means you won’t have to do much work to create your own if you haven’t already. It’ll be easier to get your services up for Android users and debugging any issues will be that much easier in the long run. Unfortunately, this means you’re at the mercy of hundreds of carriers around the world as not all of them will allow SIP applications to go about their business.

Users: SIP and VOIP are already big on Android, so these additions won’t really matter much to you unless your provider or the vendor of your SIP client incorporates Google’s official APIs for features they previously couldn’t quite deliver.

Camera and Music

Multiple Cameras

Developers: Before, you’d be forced to develop for a particular device if you wanted front-facing camera access to allow for video chat. Now, Google lets you read information about a device’s camera so that your applications are easily adaptable for new devices. (You might not even have to add or change code to support new devices that hit the market.)

Users: This won’t mean much to you, but it will eventually mean you won’t have to wait for a developer or carrier to support your device with a front-facing camera after you buy it. That ultimately goes a long way in adding to your satisfaction.

Audio Equalization and Effects

Developers: It’s a pain for most of you to have to create your own EQ systems to make your applications more valuable to users against competition. Though many of you have poured a lot of time and resources into a great audio experience, Google’s new media framework adds support for bass boost, per-track or global audio effects, equalization, reverb, and headphone virtualization (for simulated 5.1 sound).

Users: Eventually every application will provide EQ settings and the sound experience on Android will be that much more sensational.

Overall Performance, Adaptability, and Accessibility

StrictMode

Developers: To put it simply, StrictMode allows your application to monitor its own performance in real-time and determine if an anomaly is causing an experience-breaking issue (such as general slow-down in animations and responsiveness.) You can use it to handle unpredictable performance issues which don’t immediately present themselves during QA. (But we’d hope you’re always working to ensure things like this don’t happen regardless.)

Users: If your applications suddenly slow to a halt one day and you don’t know why, this may be the reason. Thankfully, Google’s made it easier for the developers to handle these sorts of issues and it will hopefully lead to a better overall experience.

Large Screens

Developers: It was possible to adapt your applications to “extra large screens” before, such as those found on tablet devices, but Google’s allowing you to express that in your manifest files, probably because they may end up filtering the Android market soon for the tablet overhaul coming with Honeycomb.

Official Support for devices without an SD Card

Developers: as more and more devices are coming with large amounts of internal storage, users want to be able to use that space as they’d use a microSD card. This was a big deal when the Droid Incredible for Verizon launched earlier this year and many applications refused to acknowledge the internal storage. Now, you’ll be able to check if there is external and internal storage and have your application act accordingly.

Users: You’ll soon be able to buy devices with large amounts of internal storage knowing that most applications – should the developers be mindful enough to update them – will be able to treat your internal storage just as they do a microSD card without having to pressure them for an update. Added convenience is always a plus.

There are a lot more changes, but these are the key changes that users and developers alike should know about. If you’re a developer, you’ll want to check out the full list of changes for Android 2.3 over at the official Android Developers’ SDK section. If you’re a user, you already know about everything else that is obvious about Android 2.3: it looks different. Not much different, but different. And remember that an SDK’s changelog doesn’t spell out the list of changes to the actual Android 2.3 update. For instance, we previously heard official VOIP and SIP support would be in, and it would probably be integrated into Google Talk for voice calling features.

Featured

I hope developers start letting you select whether you want data loaded on an SD card or internal storage if you have both. The Droid 2/X have 8 gigs of internal storage that mostly goes to waste unless you’re installing about 8000 apps.

Matthew

Nice!

Bobby J

Great writeup Quentyn! I’m definitely looking forward to digging through this all when I get home from work later this evening. I feel like the biggest thing that will pressure manufacturers to update their devices will be getting lots of apps out there that take advantage of these new features, creating plenty of demand from users.

Scblacksunshine

Nice…the equalizer feature is much needed. Good job

Lewis

@Alex

This. A lot of apps install to my SD Card by default. Not a huge deal, but annoying nonetheless.

Jonathan Drake

“Users: This won’t mean much to you, but it will eventually mean you won’t have to wait for a developer or carrier to support your device with a front-facing camera after you buy it. That ultimately goes a long way in adding to your satisfaction.”

I disagree about this one. Right now the only FFC app for video is Qik (as far as what I’ve seen). Adding this API means more options which also means better support across different phones, carriers, OS, etc. That’s a big deal since right now the video chat is almost useless if only a handful of friends have it.

Quentyn Kennemer

@Jonathan Drake that’s true, and that’s kind of why I didn’t include that angle: it’s pretty much obvious, though it wasn’t impossible before. And this doesn’t add native video-calling support – from what I understand, vendors will still have to bring their own solutions to the table or license from a third-party company. This just makes it easier for existing and new vendors to support new devices in the future.

ssummer

I fail to see what all the Gingerbread excitement is about. I will take the claims of improved speed and battery life with a grain of salt. I heard the same thing for Froyo. The rest adds marginal functionality (with the exception of NFC which every current Android owner will have to make a hardware upgrade to get).

-We already have faster and better keyboards.
-We already have better task managers.
-We already have SIP/VOIP.
-We need game developers to start taking advantage of the Froyo SDK improvements (Apps2SD anyone?) before they even think about Gingerbread.
-We need game developers to stop having in-game ads slow the games down to unplayable speeds (like maybe offer paid ad-free versions?). That speed boost wouldn’t require any new SDK.
-F^(k gyroscope support, how about more game devs supporting high-res screens?
-What good is all the multimedia improvements if the built-in “multimedia” apps suck? How about an integrated Audio/video player with features more in line with 2010 than 2000?
-How about adding that graphic EQ to your own damn music player?
-How about improving the Camera app load time before worrying about 2nd and 3rd cameras?

Don’t get me wrong, these are welcome improvements/fixes to Android, but seriously, it’s like the old saying goes: “You have to crawl before you walk”.

KidPhat

I am with you @ssummer. All I can say about Gingerbread is Meh! Where is my HoneyComb?

max

this is really a great article

Maj

@ssummer i have a nexus one and ads in games never slowed my device, i read similar comments to yours everyday on the market, i think maybe its time to get a better/faster device and dump your old g1/hero

http://www.kittehface.com Terazilla

I really wish they’d put proper support for OpenGL ES 2.0 into the Java side of things. With so many CPU architectures out there the NDK just seems like a disaster waiting to happen.