I'm sick to death of Android
zdnet.com
zdnet.com
When I first bought the Android phone (HTC Hero) I thought it was amazing. It really had some neat features, and there were things the iPhone couldn't do (like totally change the home screen manager).
But it was never updated. Not once. It took just months to start seeing apps in the Android Market that only worked with newer OS versions.
I'd also discovered battery issues; it was abundantly clear that the carrier, Sprint, had the phone pre-loaded with apps (in the ROM so they could not be removed). Not only did ALL of these stupid things auto-start when the phone was powered on, but they were apparently set up to start themselves every hour or so because even with an app-killer I'd still see this junk back in memory sooner or later.
Say what you will about Apple, but they keep the crap off your phone. Carriers can't put a damn thing on there that you don't want. I've also already received 2 OS updates from Apple, which is 2 more updates than I ever received with Android.
I also realized that even though Apple doesn't let you customize as much, their UI is also not broken the way Android's is. For instance, some of the default HTC Sense UI did really stupid things in my opinion. Sure I was able to "fix" problems by downloading replacement keyboards, etc. but with iOS I don't even feel the need for that because Apple's UI is by default more sensible.
Say what you will about Apple, but they keep the crap off your phone. Carriers can't put a damn thing on there that you don't want.
True, but they do a damn fine job of keeping things off:
iPad 3G video downscaled, blocked over AT&T network: http://www.ilounge.com/index.php/news/comments/ipad-3g-video...
AT&T and Apple Admit Deal to Block VoIP on iPhone: http://www.pcworld.com/businesscenter/article/170661/atandt_...
AT&T cracking down unofficial tethering apps like MyWi: http://www.intomobile.com/2011/03/18/att-blocking-unofficial...
(Granted, Google's complicit to the carrier's requests here too -- however, I'm still perfectly able to install anything I want on my phone.)
But it was never updated. Not once. It took just months to start seeing apps in the Android Market that only worked with newer OS versions. [...] I've also already received 2 OS updates from Apple, which is 2 more updates than I ever received with Android.
No, it isn't. The Sprint HTC Hero got an official upgrade from 1.6 to 2.1, roughly eight months after the phone came out and five months after 2.1 came out. http://www.slashgear.com/sprint-htc-hero-android-2-1-update-...
This is not a valid argument for the average Android user, since they would have to root their device first. Jailbreaking an iPhone would also allow you to install anything you like.
to install anything useful to your phone you have to root it. e.g. try installing tethering or VPN apps when your operator image denies it.
also, all processes that involve rooting/flashing will involve one step that you remove the firmware locks from the device, allowing a thief to peek at your data at will even if the phone is password protected.
*downvoters, also contribute to the discussion saying how you enable tethering on, say, a thunderbolt bought from at&t. thank you.
Separately, if you managed to buy a Thunderbolt from AT&T you have much bigger problems than getting tethering working. The Thunderbolt is a Verizon-specific CDMA/LTE phone that doesn't support any of AT&T's networks (AT&T's LTE is on a different band).
and i wasn't saying 'non-google-store-sources-aka-unkown-sources is a bad thing. i was just saying it's not enough to 'do what you want' with your device.
I do think Apple's iron grip on certain parts of the OS is a problem though. For example, I really dislike the iOS virtual keyboard. All caps all the time? Really? I love that in Android there are dozens of replacement keyboards I can use if I want. Unfortunately, I don't think Apple will ever loosen it's grip and that's the biggest thing that keeps me away from the platform.
I think (he|she)'s referring to the displayed case of the graphemes on the US iPhone's on-screen keyboard; that is, all letters are always displayed in upper-case, regardless of the state of the ``shift'' key.
I guess the trade off is against having a massive visual change every time you tap shift that could draw your eye away from the cursor position in the middle of typing.
There are so many things that Google could do for the benefit of their users, not necessarily for themselves, if only they took a tougher stance with the carriers, or convince them somehow that letting the customer be the #1 priority, and not the carrier itself, is actually a good thing in the long-term for the carrier. And a good example of that is the iPhone, which even though had the customer (and Apple itself) as the priority, the carrier still benefited a lot from all the customers and more expensive plans.
The nexus phones however are arguably better than iPhones.
- touchscreen ghosting - touchscreen crazy-mode when hot - worse than iphone4 3G reception - battery cells life cut in half after 1st year
i was luck to have 2 and 4 on mine. bought from google using google checkout. they never returned emails or letters regarding this. people on forums that bought at stores had HTC take them in and return the same way.
It's a shame really, because I think iOS has largely stagnated from a UI perspective or perhaps even degenerated with the ridiculous skeuomorphisms of their recent apps.
However, that diversity in hardware is also the biggest problem with the platform. Handset manufacturers seem to look at a device as a "sell and forget" sort of item. They make it, sell it, and then move on to the next project.
It's too expensive, in their minds, to support a handset that they've already sold. They make money by selling more handsets, not by putting large amounts of effort into supporting and updating old hardware from which there is no revenue stream.
Apple, on the other hand, actually has a significant revenue stream from existing hardware through the sales of apps, music, and books. So, by providing updates for older versions of the hardware they are improving their ability to collect additional revenue. For example, when they added in-app payments, those APIs were available to all existing iPhone users, not just the newest users and thus were able to extract more profits from those existing users.
In the Android world, a manufacturer only makes money from the original sale. So, it seems that in order for Google to encourage on-going support, they should:
1. Participate in a revenue sharing program from app sales from the manufacturers phones that are running the most current release of the OS.
2. Improve the situation with drivers the large variety of hardware. If the Google distribution supported a large amount of hardware (CPUs, GPUs, sensors, etc) "out of the box", perhaps it would be easier for manufacturers to get the OS running on their devices and thus take less time to get updates to market. Or perhaps I'm being naive and there's something else that's holding up updates other than technical issues with drivers/hardware compatibility.
In the United States at least, mobile firmware updates are subject to the approval of mobile carriers. Most phones that are released in both the United States and Europe are updated in the latter region before the former. American carriers are also a primary reason why most phones do not run stock Android [1].
Since some revenue sharing is already in place [2], and carriers make money regardless of what Android version their customers are on, I do not think it is the answer. Unless Google can find a way to reduce the control that carriers have (by weaning Americans off of subsidized phones, or by restricting Android software customization similar to iOS or Windows Phone), I am not sure things will change for the better.
[1]: http://www.theverge.com/2012/1/10/2697939/motorolas-sanjay-j...
[2]: http://articles.businessinsider.com/2010-03-25/tech/30041935...
On Android devices, the best analog to the BIOS would be the bootloader. Since most Android bootloaders are locked to prevent unsigned kernels from running, they are updated during OS updates. See http://www.extremetech.com/computing/120771-what-is-a-bootlo... .
but i agree with your points. just saying that there's probably a third issue as well.
I also think Google made this a lot worse by not being more open with ICS development. If Google had been more open with the kernel and drivers along the way, I think ICS upgrades could have been much easier and could be moving much faster as well.
Put in perspective - it took about 12 minutes after finding out about a new iOS release and having it on my device, and 12 months for the Android device.
FWIW, Apple don't exactly have an unblemished record in treating owners of existing iPhones properly, as anyone who suffered through the first few iOS upgrades on iPhone3G's after the 3GS came out. For a while even Apple native apps like Messages (the SMS app) were all but unusable on a fully updated 3G…
Having said that, I'm still overall much happier with the OS upgrade path my original iPhone -> iPhone 3G -> iPhone 4S has had, compared to the long delays in getting _any_ OS upgrades for my Galaxy S II (largely due to the carriers here in .au rather than Google's fault, but that doesn't make the feeling of lack of support any easier to stomach…)
when i first bought my dreadful nexus one, the only newly launched keyboard option i had was the backflip! a brick was faster. it was already announced to be relegated to 1.5 forever, and 1.6 was launched before it was out. or something like that. older keyboard availables, G1, too slow, no support. droid. slow, no memory, no GSM.
The Desire Z is still sold though it is getting harder to find (e.g. retailers like expansys don't seem to have it any more). On the other hand, T-Mobile also recently had a surprise revival sale (now over, I believe) on its twin (the G2).
There are also a fair number of lower-end QWERTY devices (both Blackberry-style and sliders), but there is absolutely room for a high-end QWERTY "hero". Personally, I'm rooting for an HTC One Z (with a T-Mobile G3 twin?), but we'll see.
will do take a second look at them
http://allthingsd.com/20110420/the-most-successful-store-no-...
$1.4b/quarter as of last year. Their margins are a lot tighter on media sales, but even so, that's probably a good chunk of change.
That being said, it is interesting how Apple's support of old hardware is the dual of Google's.
Google does a bad job of getting OS updates to older hardware, but they do an impressively good job of supporting their applications on older hardware and OSes. Outside of the deliberate exception of the Chrome Beta, I can't think of an official Google app for Android that doesn't support at least Froyo and many go back further. My G1 (running Donut) was still getting Google app updates for a good chunk of last year. I happen to know that because I picked it up for a memorial tweet on the G1's third anniversary and was surprised with all the update notifications I got.
Meanwhile, Apple is very good about getting OS updates to older devices. But when you look at their app support, it doesn't look nearly so good. Everyone talks about Siri, but did you also know that the original iPad doesn't support iPhoto or iMovie (see: http://www.theverge.com/2012/3/9/2856499/iphoto-ios-app-ipad... )? iMovie is particularly damning because the first iOS version (for the iPhone 4) was released less than 3 months after the original iPad.
I understand why Android geeks are desperate to have the very latest OS version running on their device (as a weird point of OCD-geek pride). I have no idea why Apple fans should care so much about what version number Android phones have when Google is near constantly updating the software that runs of them. Seems to run counter to their stance on the features vs. specs debate on hardware, where user experience is more important than the number attached to something.
"Normal people" on the other hand, clearly don't give a damn, if they are even aware of this "issue", and have no reason to.
And those contracts are still giving them money, otherwise they wouldn't think twice about breaking it. All apple actions can be directly translated to immediate profit goal.
Also, wake up and promote this heavily, before you lose the tablet market forever. The iPad advantage is growing by the day, and Windows 8 tablets are coming, too, and even though I'm not a fan of Windows 8, I'm almost certain Microsoft will be able to brag about having more apps for ARM tablets than Android has for tablets at the time, because I'm sure they will be just as aggressive about it as they are with WP7 apps. You simply can't afford to stay on your asses and let apps come to you. I know that's Google's attitude towards it right now, because it's obvious from how Andy Rubin and Eric Schmidt speak at events. Change that! Fast!
It's simply inexcusable that you've launched Honeycomb more than a year ago and all you have to show for it is a few hundred tablet apps. The Nexus tablet will not change that if it's only 7", even if it's a popular tablet. I don't think devs will bother to make "tablet apps" for a 7" tablet. They'll just leave the phone apps, which look rather well on 7", and Kindle Fire is an example of that.
So I don't know what you have to do, pay each developer, hold a $100 million contest for Android tablet apps, reject their apps if they don't also make a tablet version within 6 months - whatever. Just do it and be very aggressive about it, because you've lost a lot of time with the Honeycomb launch failure, and now you only have little time before Amazon's ecosystem or Microsoft's ecosystem become bigger than Android on tablets, too. And that's without even mentioning the enormous and growing iPad ecosystem. That's why you need to start being pro-active about tablets apps like yesterday.
So, to facilitate that, I grabbed a cheap HP TouchPad, and flashed the (admittedly still reasonably raw) CM9 ICS build onto it. ICS itself is pleasant: the notifications system is great, the multitasking is easily on par with WebOS, and the action bar is a good step forward. The screen wasn't so great, but I knew that going in; most of the "real" Android tablets have beautiful hardware.
The state of the apps, however, is shocking. Even Facebook and Twitter haven't bothered to build tablet apps. I believe Google is somewhat stuck between a rock and a hard place here, however, and it boils down to an argument I've often thought entirely facetious - fragmentation. While they introduced decent APIs in ICS for making apps that work well on both phones and tablets, the vast majority of phone hardware out there is still running Gingerbread or older. Meaning that developers can't use those new ICS APIs, because their apps will no longer run on most user's devices.
I don't know how Google can address that easily, but I'd wager it proves to be a significant impediment to those trying to target Android tablets: either they do the whole thing manually in Gingerbread, or fork their codebase into an ICS version, and a Gingerbread version. Neither is an overly pleasant solution.
(for the record, I ended up drooling over/buying an iPad 3. The apps are much better)
[1] http://developer.android.com/sdk/compatibility-library.html
Note that you don't remove WebOS when you flash Android onto a Touchpad; it sets itself up to dualboot :).
As for the webOS ecosystem dying, I'm willing to wait and see what happens with Open webOS later this year before I agree with you there. It's certainly in a lull with no new hardware on the way, but once Open webOS hits that issue is no longer relevant as I can install it on any existing hardware that supports Android.
One thing they can do is promote good apps, not the way they're currently doing it (e.g. Staff picks, Top developer), but with something like the Apple's approval system, but not to the extreme of "the app is either approved or denied". I was thinking more like the dev can pay a fee to get his app reviewed (UI, performance, ...etc) and when "approved", it gets a symbol (check mark, star, whatever) and put on a category of "approved" apps. This will probably encourage more devs to work more on their apps to get them promoted.
The OP brings up many valid concerns, and asks, as a consumer, how much is one willing to tolerate this?
My answer: A very long time, as long as Android phones and plans continue to smoke iPhone on price and provide an "almost iOS" experience.
The Exhibit II has Android 2.3.5 installed. T-Mobile charges US$30 per month for 100 minutes of talk, unlimited messaging, and 5GB of 4G data; thereafter it reverts to slower data and 10 cents per minute of talk. I am not a heavy talker, nor do I stream video or audio (and when I do it's usually within wifi range). When I was looking for a plan, I saw a similar offer for a Virgin plan (I think it was US$35). Friends overseas tell me even cheaper Android plans are offered through local carriers.
For owners of Android handsets, using Facebook, Twitter, email, Web, and most mobile news sites is comparable to iOS. I miss Instagram, but it is coming soon to Android, and in the meantime I make do with Path. There are a few other missing Android apps, and the UX is slightly inferior, but considering it's $30/month, it's good enough.
To many people, that's the value of Android. The UX is very similar to iOS, it handles most smartphone functions, and it's a lot cheaper.
Here in Europe you pay about $525 for this device (off contract), and the 710 and 610 are about $330 and $260 respectively. An HTC radar goes for $380.
On the other hand, the UI is silky smooth, not at all like the Galaxy Nexus I have lying around here for development. I guess it's just a personal thing, but I really can't live with the UI lag and jitter on Android. You don't have a ton of options to play around with, but the features that are there just work without hassle.
Things like email, messaging, facebook all work great. The browser is nice and responsive too. You get Office for free so you can open Word documents on the go, and Nokia Drive 2.0 gives you free navigation with free offline maps. It works well here in the Netherlands and is a big plus for me. Skype is available as a beta which is still rough around the edges, but it's nice to be able to call my mom over Wi-Fi without wasting minutes.
So I guess it's a bit of a mixed bag. For me the positives greatly outweigh the negatives, so I'm a happy camper. Maybe you should just go play with one at a store and see if it's for you.
i had to switch to android when nokia made me a sucker with the lousy E70 right before the N9, making me hate them so much to the point of never buying from them again.
now android just did the same with the lousy Nexus one. i simply can't see myself buying another android.
that leaves me with windows phone for now, mostly for the benefit of doubt they still have... IF we still care about phones in a while. big IF there. i strongly feel that phones as we use today will soon be the devices of the unwashed mases of late adopters
When I first read your post, I thought you intended this as a snarky remark about the ongoing lawsuits, until I looked it up and found that Samsung really does have a phone named the "Exhibit II". Why do phone manufacturers in particular have such poor taste in naming, and keep picking names with no obvious naming scheme or consistency?
Cell phones also follow this throwaway name pattern. I guess there are brands like the RAZR and Droid, but the individual models have throwaway names.
Where do those numbers come from? Does some one just make up some nonsense? Sometimes they put the screen diagonal in there but I think more often than not they have no bearing on the product.
Is it because finding trademarks is hard? After all, Apple paid a ton of money for the iPhone trademark.
Was there a time, like back in the 50's, where companies used normal names for electronic products like stereos?
Software used to follow version numbers, like 1.0, 2.0, etc. But then Microsoft changed it to 95, 98, 2000, XP, etc. And then Apple changed it to Leopard, Snow Leopard, Lion, etc. Which I think are more friendly names. Ubuntu seemed to follow in Apple's lead with Hardy Haron and so forth.
I guess with software you have a linear sequence of products. With hardware, they seem to produce a lot of useless variants (except Apple), so you can't number them 1,2,3 / A,B,C.
To me, the first looks like a marketing name, and the second like one that only makes sense to the manufacturer. I am assuming that the numbers do have meaning here.
Marketing names may or may not be intended to be short-lived. Sometimes, they just become short-lived, either because of how they behave in the market (see: Edsel), of internal politics (a new brand manager steps in; (s)he cannot claim the previous manager did a fine job, so something must change), or due to short-term profit hunting ("device named 'X' sells well! Let's make a low-budget one and sell even more!"-"But we would have to cut quality to make it cheaper"-"Yeah so?")
There also seems to be this notion "if consumers are confused, they will pick a brand at random. The more brands there are, the easier they get confused. I will make lots of brands, so that they will get confused, and pick a random brand. Since I have so many brands, chances are they will pick mine.". That approach leads to short-lived brand names.
As to that DX-3095 naming scheme: chances are that it was taken directly from the manufacturer's internal tracking system. The first digit might indicate the factory or the PCB version, or whatever, the second the quality of the tube, etc. That may or may not give useful information to customers.
To a degree but very few people I know use these names. Most use the 9.10/10.04 which imho is one of the best naming patterns for an OS.
It is very convenient to look at the OS version and be able to tell instantly if it is a LTS or standard build and when it was released.
Maybe these are only benefits due to how often Ubuntu releases new versions but I've found them useful.
disclaimer: I'm a sysadmin.
The ipad is good for things I want comfort for (reading, web-browsing, etc.) and they are reasonably price competitive (assuming you get the wifi only version, not a plan), but the android phone is much more versitile (if sometimes annoying to use) and generally cheaper than a tie-in iphone plan.
Plus then you get to use applications for either OS.
I do not get why people feel entitled to OS updates on their phones (apart from security fixes of course). If the OS right now is not good enough for you, then why buy a phone with it?
On the other hand, I chose an Android phone because then I was free to use ROMs, root, and control the phone as I like, eg block internet access, adblock, control permissions, install random apps from random websites (no piracy...).
Now, smartphones are still a bit in between. They're basically computers but still regarded as phones. It'll take some time for everyone to catch up to the same level, maybe some years. Apple does it already and others must follow as soon as they get the order back in their development chain.
Ideally, an Android phone would be like Ubuntu with per-device kernels. It would continuously stream new packages over the net and the kernel would handle all device specific things so that Android userspace doesn't have to. It basically works like this already, it's just the update process that hasn't been mechanized. And there are a small number of device specific tricks in the userspace too, these days, because OEMs think they can tailor Android for their product. It's as bad as an OEM that would want to sell laptops with an OEM customized Ubuntu distribution. It works one time but gets left back as soon as the real Ubuntu makes the next release.
Note that security holes have been found in the dumber phones such as specially crafted SMS messages that cause grief.
In the case of a highly connected device that has a web browser (eg a "smartphone") there are guaranteed to be many security holes. That is the biggest problem with Android non-updates. It is bad enough being behind on functionality updates, but being vulnerable is even worse.
The OP repeatedly laments the fate of people less technically minded than himself, how hideous the experience must be for them if someone do clued up is having such a terrible time... The fact is that those users to whom he is referring exist in a realm of blissful ignorance.
I wonder what proportion Android users out there even know what ICS is. I'm willing to bet it's a tiny fraction and I'm willing to bet that Google knows that. That's what makes the whole Android story such a cynical one IMO-the platform was (still is to a large degree) touted as the ultimate geek device. Something beautiful that google was goig to give to the techies out there... What it is is a shallow, lowest common denominator.
I had such high hopes for the 'Google phone' of 2006 but I have never owned and Android device and really do not care to.
Leave this guy alone with his rant.
As a communication device, I think it easily trounces the iPhone, even though its only running 2.3. The Google accounts integration is a lot smoother than mail on the iPhone and the phone features are better overall. And I never want to go back to pecking out text messages one letter at a time after using Swype.
However, as an apps platform it sucks for all the well known reasons. I think the reason that Android phones have sold so well is that the core features are at least as good as the iPhone. It's too bad, because I actually prefer the way they do a lot of things in the SDK (resource management, for instance). But I agree Google needs to get things under control soon.
Same thing played out with US vs Japanese car manufacturers. People have lasting memories when they feel that they spent money on an inferior product.
I told myself I was running off to Android where I wouldn't have to deal with a walled garden any more, so I'm kind of like the reverse of you - going to get a non-iPhone after my bad experience with Apple.
What I'd like to know is whether Android is still worth going to. Will I be able to sync without worries, install apps as I like, and root the device easily? I keep seeing mention of CyanogenMod and I don't know if that's what I'll have to install to get the full control I want. Is installing CM what rooting (mostly) involves?
I've been meaning to pick up the Galaxy Nexus, but bad press about its camera and uncertainties about the degree of freedom it allows have been keeping me back. I was even considering getting a Galaxy S II and installing ICS. I appreciate any advice from the Android users among you.
1. Does the device have an officially unlockable bootloader?
Many Android devices do (e.g. Nexus devices, most HTC devices, most Sony Ericsson phones (though that may change as they are absorbed into Sony, the Asus Transformer Prime, ...), some do not (most Motorola phones, Sony's Android tablets and Google TV devices, etc.) and then there are some in the middle (they're relatively easy to unlock, but the unlock isn't official - e.g. most Samsung and LG devices).
2. Is the device getting an official version of ICS?
As I and others have noted elsewhere in this thread, ICS is a technically demanding upgrade (particularly at the kernel and driver level). If your device has gotten or is getting official ICS, then any custom ICS ROMs will have an official kernel (with source) and a full set of third-party drivers to build on, which is big leg up on devices that don't have that.
In the first place, I want to be able to install programs from wherever I like (which was why I needed to jailbreak - to install an important app which had no official iOS release at the time), so having to jailbreak for that capability is still a drawback (or 'failing') of Apple/iOS relative to my requirements.
I hope the Nexus won't get in the way of my needs - I don't want to have to wrangle with anything when an OS update is issued, even if I root my phone. And I also don't want 0 updates. Does any phone fit my use case?
I guess my point is that you knew in advance that the device wouldn't do what you wanted, so it's not really surprising that you didn't have a great experience and I think it's hard to blame that on Apple.
Personally I think that anyone who would need to Jailbreak an iPhone would have their needs better served with a good Android phone. In this regard they are simply aimed at different customers.
I have an iPhone 4S now, after trying out a Nokia N9, and I've never been happier.
Hopefully Google's new "streamlined and integrated" philosophy will continue to reduce update times and further polish and unify the interface. Only time will tell.
It is nice to have a good new contender on the scene with Windows Phone though.
http://seattletimes.nwsource.com/html/microsoftpri0/20178567...
Previously, Microsoft provided exact details on when specific phones on specific carriers would be getting software updates, but this policy ended in January 2012:
http://arstechnica.com/microsoft/news/2012/01/microsofts-new...
I’ll point them towards Apple’s iOS and Microsoft’s Windows Phone instead. At least with these platforms, you’re guaranteed core OS updates and bugfixes for the length of your contract.
I think this just isn't true. Maybe WP is currently more homogeneous than Android but clearly MS is somewhat at the mercy of the carriers here too.
For example, Google Maps requires "Allows the application to call phone numbers without your intervention" since last update. I don't want to grant that (it just needs to show a map ffs), but must, or stay behind.
What would great is to be able to selectively grant permissions to applications. I've read that cyanogenmod can do that, but have been careful with reflashing my phone. Maybe I'll give that a try now...
but still, a step in the right direction.
But even so, I agree that the permission system is so generic and creepy, and sometimes you freak out when you see some (probably harmless) permissions, because you don't really know what to expect, and you don't know what kind of power Google has given to developers through these permissions.
Though others claim that for calling it launches the phone app, and doesn't call out itself...
Anyway -- it is just a pretty harmless example. Some games are much worse. I don't have time to research or decompile all interesting apps to see what they are doing with a certain permission.
I never call from my map, so don't want to grant it. It may also use the permission for calling premium/foreign numbers behind my back and cramming my cellphone bill. I don't like the "Accept it all or leave" approach.
I doubt it will help you though, because it will most likely cause some function somewhere to throw an exception which will in turn cause the app to crash.
I doubt it will help you though, because it will most likely cause some function somewhere to throw an exception which will in turn cause the app to crash.
That's why I blame the Android platform and not just the apps. If Android made it clear from the start that permissions are optional, and that requests for them can be rejected, applications would be written to cope with that. It would also force developers to explain why they need a certain permission.
Ironically, it is more of a social problem than a technical one. If people were expected to gracefully handle the exceptions thrown when permissions are denied, we'd be 80% of the way there, I think.
For example, the Android API has a tendency to return null from functions even when the documentation doesn't say it will (i.e. WifiManager.getScanResults and friends), or simply doesn't document return values at all (i.e. ConnectionManager.getActiveNetworkInfo). The Google guys aren't real stars when it comes to documenting what exceptions may be thrown either.
You can't blame app developers for not gracefully handling exceptions and return values that are not documented.
However, when the functionality that is being protected is implemented in a system service (which runs in a different process), it's the responsibility of the callee to check the permissions of the caller using Android's own 'permissions validation mechanism'.
http://www.cs.berkeley.edu/~afelt/android_permissions.pdf (Section 2.1)
(as an aside, as of last month, a good 45% of desktop web users were on Windows XP, an OS version that hasn't received any major updates since 2008: http://www.netmarketshare.com/operating-system-market-share.... )
I have a feeling it is primarily a geek obsession and for all the ranting of geeks it isn't going to make much difference. Android will always have the latest and greatest and simultaneously the oldest and cruftiest stuff going around, and by and large consumers won't care because all of them play Angry Birds.
You're right that most changes have very little impact, so this is largely psychological. It hits in two ways for me: 1) the delay between the product's "release" and when I can get it, 2) the uncertainty of whether an upgrade will even come at all for my phone.
Also remember that Google releases their version as soon as it's ready for them, unlike Microsoft who keeps the OS from being released until at least a few manufacturers have it on their devices and ready to ship. Should Google adopt the same model and in this case keep ICS from being released until summer 2012, when all manufacturers would be ready to release devices with it at once? Perhaps, but keep in mind that this would also mean using obsolete hardware, just like with all WP7 phones, and it also means they would be way behind iPhones and iPads in terms of hardware, when they adopt a model like this.
Second, can the solution for standardization be having some kind of a "virtual hardware layer", and by that I mean more than just what the Dalvik VM currently does - more like "universal drivers" that would make Android easy to upgrade and install on any ARM phone? That would be a dream come true for any Android fan.
One thing I know for sure is that Google needs to be working on something like this - even if it takes them years to do it, whether it's because it's hard to do technically, or because they need a lot of time to set-up all the right partnerships.
This goal is well worth pursuing, until things become too complex (thousands of devices). But I'm hoping they've been working on it already, and we're only 1-2 years away from seeing it.
I have my old Droid and I won't upgrade until it's dead - it's running CyanogenMod (Gingerbread), has a wicked custom home screen, it's overclocked, undervolted, can run OnLive games, Angry Space Birds :-), One Piece for GameBoy Advance (loved that game on my GB!), Skype on 3G, and a s*it ton more...
I'll get a Droid 3 when I upgrade, as well - I feel crippled without a dedicated keyboard...
I see smartphones (and laptops, tablets) as simple platforms to customize to your liking - obviously, networks would have a problem with that if everyone thought that way, but it's the best way...
In a nutshell, the reason I haven't seriously considered an Android device. I was burned by my last Nokia/Symbian phone not getting any OS updates or bug fixes, and quickly decided that I wouldn't be able to predict which of the numerous Android devices would turn out to be the lucky ones that would be supported and maintained.
I was proud to call myself an Android Fan Boy and urged my friends to get one (last year I convinced about 10 friends to get an Android phone and they did). I'm now a frustrated user myself and the worse part is when those friends read article like this and ridicule me.
I know this psychological feeling of wanting the latest craze, but the reality is probably that the old versions of Android work just fine. We have somehow been trained to crave new OS versions, but that is nothing to commit suicide over.
Google has to allow downloads of previous versions if a paid app starts upping permission requirements OR providing an app by app permission blacklist for non-rooted phones.
Basically the recipe for a disaster.
So it's not just hard, but impossible.
Around half of all smartphones sold today run Android. I don't think there are that many 18 year olds.
Your phone should update with the latest features as soon as they are available not a year down the line.
Yes, it should. But most users don't really care, as long as it makes calls and can get on Facebook and run Angry Birds. Apple/MS fanboys are correct that Android geeks aren't representative. But neither are they.
It's like playing roulette when buying a phone trying to find out which OEM will update there OS on time and which will not.
GSM Nexus.
Very non technical users freak out if they switch something on one day and it's all different.
It's probably the 18-20 demographic who cares about having the latest versions.
The iPhone 3GS shipped in June 2009 with iOS 3, and has continued to receive every update between then and now.
There have been literally hundreds of new features added in that time, as well as a series of whole new built-in apps.
I believe all Chromebooks even get all the updates from Google, though it remains to be seen if that can be maintained with more than a few devices.
Symbian and MeeGo are also getting constant OS updates although Nokia's official direction has shifted away to Windows Phone, and will continue like that for several years. As for Android, Google is treating it like an ugly retarded kid that they don't really want but are forced to take care of.
You don't have to write Android apps in Java - that is just the normal way of doing it. You can write them in anything that is executed by native code including C, C++, C# (Mono) and there are many engines available including ones for Adobe Flash, Unity (C#) and even apportable.com which lets you use Objective C as has reimplemented the iOS APIs on Android. Google also have a SL4A that lets you use Python, or you could compile Python yourself.
If you want real pain, try doing Blackberry development, where you had no choice but Java, crappy APIs, overzealous procedures and crummy dev environment.
The hardest part of Android development isn't the code writing but user support - Android Market plays up, various devices you have never heard have quirks/bugs, feature support varies etc.
The swipe gesture is really cool until a bunch of apps also want to use swipe within the app. At that point, you get to play the fun game of trying to perform a swipe that is long enough to get the app to acknowledge it without starting at the edge of your screen, because that would cause the OS to switch out of the app.
There is no option to display 24-hour time and YMD other than by setting the locale. My phone now thinks that I am Japanese because I want it to display 24-hour time and YMD, but I do not know any Japanese, so every bit of software that localizes based on my locale is somewhat difficult to read.
It took a couple days to get IMAP IDLE to work, but even once it worked it would often repeatedly attempt to download a huge amount of email, fail midway through, and start again from the beginning rather than keeping whatever portion it had finished.
It is also missing a lot of software that two other OSes have, but I at least knew that would be true before buying it.
The fact that you hit numbers in the dialing screen and have to wait a few seconds before the phone makes any sound is another strong indicator that your phone is broken and you need to have it replaced under warranty. It is not supposed to be behaving like that.
I have not seen any swipe conflict between the applications and the phone's UI, which is basically because for the built-in gestures you swipe from the edges, whereas for the apps you swipe from inside the window. I don't see how you can get a conflict out of that. Can you give me an example of app that does that? Seem like an app fault, not phone fault.
Discussion of sexism has been very prominent on HN lately; I strongly suspect if that comment read "it's like the ugly wife that you want to divorce but can't afford to" then you would have got some kind of reaction. Perhaps we should remind ourselves that people with disabilities are worthy of the same kind of consideration and respect as everyone else.
Of course, but that was not the point of my post. It's Google who seems to be trying to distance itself from Android but can't, because they're in too deep.
Sorry, no offence meant.
Please somebody, create a start up or two to solve this problem!
Think big, be the next Microsoft!