I’ve never been a big believer that Android device and operating system fragmentation is an issue. Sure, it’s always nice to have the latest version of Android running on your device, but as long as it doesn’t restrict your experience all that much then I don’t really worry about it as “crippling” the Android platform. Most of the time you can do the same things as your Android neighbour, and that’s all that matters.
Oh wait, except when it comes to Market restrictions. This is one area of Android that recently has been annoying me greatly: why on earth do developers restrict their applications only to devices they know work? Often the case is that the application works perfectly fine on the devices they restrict, yet they must, for some reason, disallow people from purchasing and downloading the apps to their device.
One particular example that springs to my mind is Rockstar Games’ recent port of Grand Theft Auto III to mobile devices for the 10th anniversary of the game. I really like the GTA franchise and recently I thought that I would get this game on my (relatively old) Samsung Galaxy S. I wasn’t really expecting it to work or be supported on my device because in the original announcement Rockstar said they would only support the latest dual-core phones, which the Galaxy S is not.
Every time my device is "incompatible" I mentally shoot the developers
As expected I can’t buy or install GTA 3 on my phone because Rockstar have restricted it from my device. Normally I would be fine with this, but then I notice something strange: the Market tells me I could have installed GTA 3 on several of the devices I have reviewed in the past such as the Sony Ericsson Xperia Ray and HTC Flyer. If it works on these two single-core devices then why can’t I install it on my Galaxy S?
Even more annoying is that I know for a fact that my Galaxy S is more capable of running this game than the Xperia Ray. The Ray has a 1.0 GHz Qualcomm MSM8255 chipset inside with the Adreno 205 graphics chipset, and my Galaxy S has a 1.0 GHz Hummingbird chipset with the PowerVR SGX540 GPU. From benchmarks I have taken in the past I can see that my Galaxy S is around 30-60% more graphically capable than the MSM8255 with a similar resolution and CPU clock speed. It's also similar, in terms of GPU power, to the supported LG Optimus 2X (with Tegra 2) and Galaxy Nexus (with the same SGX540).
GTA 3 is also a single-thread game, optimized for the single-core processors of 2001 in the PlayStation 2 and Xbox. I highly doubt that Rockstar modified the core engine of the game to support more than one thread, as that would be a massive task. So as my device is single-core, dual-core devices only will use one core and my device would be similar in performance to these then there is absolutely no reason why the game should be restricted from my Galaxy S. It even uses the same ARM Cortex-A8 CPU and PowerVR GPU architecture as supported devices.
To make matters worse, I looked on XDA-Developers and there are countless reports that the game does work, albeit not as smooth as some would like. But that’s the same as what can be expected on the Xperia Play, according to this review; a Rockstar-approved and supported device. What gives?
Looks good? Well I wouldn't know what it's like to play...
It’s not just Rockstar that imposes these pointless Market restrictions either. Just the other week Gameloft’s new Modern Combat 3 was on sale and I thought I would pick it up, but no, my Galaxy S isn’t supported again but the (slower) Xperia Play/Ray is. I go in to Plants v Zombies and this game will run on my Galaxy S but not the Galaxy Nexus with similar (and better) hardware. Dead Space is restricted from the HTC Flyer but not the slower Xperia Ray. Shadowgun is available for all my devices except the HTC Sensation, despite the description saying it supports Adreno devices.
As a tech and mobile enthusiast, I see absolutely no reason for developers to impose restrictions on devices, or only allow devices they know work, other than to save a bunch of negative reviews. And in the case of many 3D-heavy titles this doesn’t work, just check out the many 1-star reviews of GTA 3 from “supported” devices.
Developers should only impose restrictions on devices they know absolutely don’t work at all, either while they work on a fix or because they are too slow. All other times they should allow users to decide for themselves that the app doesn’t work by trying it out, and if they can’t put up with black screens or choppiness, report it to the developers (in case they can fix it) and then refund the purchase. This would work especially well if the refund window was at least two hours and not 15 minutes.
Instead I sit here, unable to legitimately purchase and play a number of games I am confident would work on my device because of developers imposing restrictions. A lose-lose situation that can be fixed. How annoying.