Re-inventing Android : Ice Cream Sandwich
microreviews.org
microreviews.org
* Moving away from long-presses.
* More consistent app navigation via swipes.
* More usable but still powerful task management/switching.
* Better representation of useful data like contacts and calendars.
* Order of magnitude better camera app, faster, cleaner, with extremely easy sharing built in.
Apparently the UI is finally hardware accelerated as well (though apps have to opt-in), so hopefully it means an end to Android's historically jittery interface.
http://android-developers.blogspot.com/2011/03/android-30-ha...
That could create an issue in games perhaps, if not done right, but they could've probably found a way to do it right. Matias himself says gestures are better than buttons, so he should've tried to get rid of those buttons completely, too. Then you could enjoy the full screen in all situations, and you could use the full "HD" resolution. Oh well, maybe they can implement it for Android 5.0 (right, Matias? - if you're reading this).
It's very eerie when you click the phone app to make a call and it freezes for a second, then half the app is drawn, you shake it a bit and it sometimes comes back, but then the call doesn't go through. Then you go to send a text and it won't load your messages or the keyboard doesn't show, or it pops up but you can't see any keys, or you see the keys but when you type nothing shows up until you close the keyboard, or it takes two seconds before what you typed shows up. All these are symptoms that you need to restart.
And while it is a little bit confusing, it kinda makes sense. Gingerbread is latest phone release, Honeycomb was tablet-only thing, and with Ice Cream Sandwich they're merging it into one release.
No. You release one .apk file (the Android equivalent of .app). Within a manifest inside it, you can specify a "target" release API version and a "minimum" version. No one running a device below the minimum can see or install your apk. The target one is more of a suggestion to the Dalvik VM with how to approach running your application (if it know you're targeting the latest release, it can expect you to use some new features and adjust accordingly, etc).
Just like with web sites, you progressively enhance an Android app during development using Java's reflection, and/or gracefully degrade by bundling up back-ported modules and UI components in your apk. If you absolutely can't get around a particular function not being present in an old version of the API, then you just don't have that feature even visible to the end-user.
The current recommendation is to set your min level to 7 (which is Android 2.1), and as of a few days ago, to set your target to 14 (Android 4.0, or Ice Cream Sandwich). According to raw statistics of devices active and in the wild, this hits 97% of all potential Android customers. Fragmentation used to be an issue back when supporting the Android 1.x line of APIs was still necessary. Now it's nice and streamlined, and I barely notice writing for compatibility any more.
And if you really can't get around some problems, the Market now lets you upload multiple apks for a single "release" of your app, each targeted towards different ranges of API levels.
The whole reasoning was to get new stuff out there and once the UI solidified than OEMs would update to latest as they no longer would be using customized UIs ..what you are seeing is the very beginning of that process..the market with new 4.0 devices selling will help get OEMs to that point in 18 months where we will only see 4.x devices.
Why? Most if not all dual core and up are GPU based and with Qualcomm reducing costs on the lower end boards you will see dul cores at the bottom end also at the $50 range per handset.
As far as developer-wise yes at first it was confusing..backporting certain stuff than writing to 1.6 with a backported set of ui components but its manageable once you step up and start doing it..and there is an Eclipse extra adt-addons plugin to assist in that it analyzes the api to see if it will work per the min and max target api settings in the manifest
Although Google merely created Android just to force the smartphone market to be more competitive, I just wish that Google stuck it's foot in the mud more. Hopefully they start a "G+ Certified" to tell customers about continued Google maintenance support or something.