3 ms·
Part of what icey may be talking about is development; the wide variety of Android hardware does make for a major pain point that doesn't exist in the Apple eco
by cdr 17y ago
Part of what icey may be talking about is development; the wide variety of Android hardware does make for a major pain point that doesn't exist in the Apple ecosystem (though with the iPad and the new resolution on the next iPhone, it might be getting there).
- icey 17y agoYeah, this is mostly the case. If you look at what's out there right now you have some phones that run Android 2, some that are still on Android 1.6 out of the box, some that run the HTC modifications to Android, some that are on the standard Android interface. After that, you have to consider the processors and memory available in every device - will most phones have enough power to run application X? Will this look like crap in these various phones because the hardware sucks? It just feels like a very fractured ecosystem. I hate developing for a platform that makes it feel like there are a lot of unknowns - how many test phones should I need to keep around if developing on Android? I know that it should be only 1, but is that really the case? How long will that remain the case for? Maybe wishing for "the" canonical Android phone is the wrong approach; but it would be nice if Google came out with some hardware guidelines that said "You can at least expect to have these things be true on every Android device."
- jarek 17y agoThat's a valid sentiment. The problem is that freedom from such issues is very rare in general-purpose computing. Certainly on x86 it's always an issue (EDIT: except on very specialized OSes, I suppose), as it is on J2ME (and I'd guess Symbian). Dedicated game consoles are pretty much the only place I can think of where your application will always run on absolutely known hardware. I agree, both as a user and as a programmer, that the mess with Android 1.6 sticking around for essentially political reasons needs to improve fast. Minimal specs are nice, although they will necessarily change as the time progresses, and you will have to make a cut-off yourself. Support only Android phones released in the past two years (as an example, obviously not a useful guideline right now) and you will know what your lowest common denominator is. On the other hand, even Apple's halcyon days of single-device uniformity are coming to an end. You now have two resolutions in iPhone OS to deal with, and if rumours are true, you'll have a third one in June (though that one's less of an issue since doubling should work acceptably). OSes 3.2 and 4.0 force you to consider both hardware and software keyboards. The iPhone 3G has less RAM available to an app than the 3GS and the iPad. CPU speeds are different on every release and I believe graphics performance differs too. New hardware features have been introduced that you have to check for. Between June and November-ish, you'll have to support 3.2 for iPad and 4.0 for iPhone (and 3.0 for older iPhones, if you even want to).
- ericd 17y agoBased on my experience with the iPhone OS, you don't really have to check for any of that unless you want to use that particular feature. For the vast majority of simpler apps, all of that is transparent. If CPU speed is an issue (games, mainly), it does help to have a pre-3GS around to serve as a baseline, but I think that the process is much less daunting than you try to make it seem in trying to play down the uncertainties of dealing with Android's fractured ecosystem.
- WildUtah 17y agothe wide variety of Android hardware does make for a major pain point Right now the overwhelming majority of Android phones have 320x480 (iPhoney) resolution or 480x800 or 480x854 (Droid). That's just two densities and really only two sets of art assets to program for. iPhone will soon have two densities and iPad, which is really neither better nor worse. iPhone apps are easily targeted at a particular resolution with interface Builder while Android apps have a cumbersome and ugly system of trying to achieve resolution independent layout that most developers don't understand or use correctly. There's no saying what will happen to Interface Builder when it faces the challenges Android set itself with varied device standards. But for now iPhone has a significant advantage in ease of development here. On the plus side for Android now is that higher density resolution makes websites a pleasure unimaginable in my iPhone. On the minus side, I keep getting user requests to support their trackballs and other exotic hardware.