Why is Android app optimisation still so poor?

Discussion in 'Alternatives to iOS and iOS Devices' started by chrisrosemusic1, Jan 17, 2013.

  1. chrisrosemusic1 macrumors 6502a


    Jan 31, 2012
    Northamptonshire, England
    Last year the all singing S3 came out and I switched camps after 4 years with iPhone. After a couple of months I gave up with it - poor firmware update waiting times, apps I had on my iDevices ran like crap on it etc etc so I sold it when the iPhone 5 came out.

    Recently I went looking for a 7" tablet - after debating the whole iOS VS Android thing again, researching online etc I decided I was once again, 'bored' of iOS and the screen on the iPad Mini really didn't float my boat. So after reviews ranted on about how amazing it was, I bought a 32GB Nexus 7.

    First impressions were that 4.2 is smooth, the screen looks great, it's nice to hold in your hand, a lot of the apps and games I had on iPhone/iPad were available so happy days.

    My battery lasted a couple of days - not fantastic, but liveable. Then yesterday I decided to buy a few more high end games - N.O.V.A, GTA Vice City, Modern Combat 4.. Best part of £15 for them. They all not only look far worse, but the frame rate drops, crashes etc are woeful, disruptive and so unacceptable.

    So I ask, why on earth are developers so lazy on Android? I get that there are 'loads' of different spec devices etc, but a 1st party tablet with QC graphics should surely run these as well, if not better, than my iPhone 5?

    It's being returned - been ripped off, unable to refund and can't run the games to an acceptable standard.

    It's such a shame cos I love Android, and 4.2 is a real step forward but for me its still a deal breaker, and a costly one each time :(
  2. Cod3rror macrumors 68000


    Apr 18, 2010
    I agree.

    I don't know what's iOS secret but it's just incredibly fluid and smooth, list scrolling on iOS is amazing. Even when iOS is lagging, it still is somehow smooth.

    Android, while it may not lag, it just does not have the same fluidity and smoothness, something is off about it.
  3. torana355 macrumors 68030

    Dec 8, 2009
    Sydney, Australia
  4. Stooby Mcdoobie macrumors 6502a

    Stooby Mcdoobie

    Jun 26, 2012
    A device is always going to run well when the same company controls the hardware and software that go into it. This is the major advantage iOS had over Android. The Nexus line has really pushed Google to improve Android, though, and it's come quite a long way in the past couple years.
  5. TacticalDesire macrumors 68020


    Mar 19, 2012
    I can see where someone would have issues with smoothness with previous versions of android. But after being primarily an iOS user for four years, using 4.2 I feel right at home. No lag whatsoever. I'm sure it has a lot to do with using an UN skinned version of android on a nexus 4. but it also has a lot to do with the under the hood improvement's as well. Not sure why you're having the issues your describing.
  6. hyteckit Guest

    Jul 29, 2007

    Too many different resolutions, cpu, and graphics chips running their own custom version of Android.
  7. throAU, Jan 17, 2013
    Last edited: Jan 17, 2013

    throAU macrumors 601


    Feb 13, 2012
    Perth, Western Australia
    This is due to several fundamental design choices, including (but not limited to):

    • Native code (iOS) vs common use of Java (Android)
    • Manual/compiler assisted Memory management (iOS) vs Garbage Collection (Android)
    • Highly optimized for a small number of devices (iOS) vs generic code for wide deployment

    The memory management is a big one - on iOS, the programmer decides when memory should be allocated/cleaned up. On Android, the java virtual machine decides when to do garbage collection in the background - which may not be the best time to do it (e.g., in the middle of scrolling the UI, for example).

    The brute force approach to alleviate that is to throw faster hardware at the problem.

    But, same hardware running iOS / some other non-GC native code will be faster/smoother.

    The above is why you can't directly compare specs between the devices - because the software stack is so different. Different design choices were made and there is a different set of trade-offs for both platforms.

    iOS memory management used to be hard for the programmer (tradeoff being made for speed). With ARC support in Objective-C / later versions of iOS, they have helped alleviate that.

    Android memory management used to cause stuttering, etc at run time. They have improved that via hardware and software updates.
  8. Jessica Lares macrumors G3

    Jessica Lares

    Oct 31, 2009
    Near Dallas, Texas, USA
    I wouldn't be surprised if it wasn't just a 4.2 issue. There seems to be a few problems with the various builds pushed out.
  9. strausd macrumors 68030

    Jul 11, 2008
    I run 4.2.1 on my Nexus 4 and it lags every now and then. The worst part is when the navigation buttons lag. I tried moving over to CyanogenMod and I still have the same problems. Even my 4S (dual core 800Mhz vs quad core 1.5Ghz, 512MB RAM vs 2GB) feels smoother in day to day use. Improved specs is beginning to feel pointless. Time could be much better spent optimizing the software.
  10. blackhand1001 macrumors 68030


    Jan 6, 2009
    Its likely 4.2 that's the issue. Google pushed out a half baked update. 4.1.2 didn't have this lag in it.
  11. siiip5 macrumors 6502

    Nov 13, 2012
    Sorry. Calling B.S. on this. Easy to spot an iFan in Android clothing. You do know that Gameloft optimized their games specifically for the Nex7! Funny that you say otherwise, and love that you think the graphics are "far worse". I have no issues with any game you mentioned. Here is some screen shots and a link to Gameloft's announcement. This OP sounds more like a troll to me. And ironic that you made the same claims about the S3 as the Nex7. This must be a joke post?

    Gameloft Announcement: http://www.techradar.com/us/news/gaming/gameloft-optimizing-10-games-for-nexus-7-1087193

    Screenshots just taken. I guess if you consider these graphics bad, you may need new glasses. Seesh. First image is NOVA. then MC4 and then GTA: VC. BTW, Vice City graphics are identical to the original game! You must be smoking something with these claims!

    Now if you had made these accusations about the iPad Mini, I would believe it. That thing is slow and has a crappy screen built into it. No software could help that hunk of scrap.

    Attached Files:

  12. torana355 macrumors 68030

    Dec 8, 2009
    Sydney, Australia
    LOL the OP just got pwnd. As i also said those games run perfect on my N7 too.
  13. spyguy10709 macrumors 6502a


    Apr 5, 2010
    One Infinite Loop, Cupertino CA
    Just have to point this out to you - the difference is less than 20 PPI, and the Tegra 3 has a weaker graphics chip than the A5. Yep.

    Just wanted to point that out to you.
  14. roxxette macrumors 68000


    Aug 9, 2011
    S C R A P ! my friend :cool: deal with it.
  15. SlCKB0Y, Jan 17, 2013
    Last edited: Jan 17, 2013

    SlCKB0Y macrumors 68040


    Feb 25, 2012
    Sydney, Australia
    Many more demanding games make use of C/C++ Code via the NDK.

    But hey, rather than actually address the issue of if the problems faced by the OP are generalised or just his, you choose to spread FUD as usual.


    4.2 is as fast as 4.1.2 on my Nexus devices.

    Unless you are referring to the Currents bug I'm not sure what you're talking about:


    ^^ This. I've not had any of the OPs issues with those games.


    Awesome use of generalisation there. What stuttering? What version of Android on what hardware? Do you mean Android UI or apps?

    Got a source that this stuttering was due to memory management issues?

    I'm pretty sure that the Android UI lag present until Jelly Bean was simply due to Google not getting off their arse and optimising the UI code like Apple had been doing from the very beginning.
  16. surjavarman macrumors 6502a

    Nov 24, 2007
    This is getting really ridiculous now. I used to be an apple fanboy but for my phones I have switched to android. I am man enough to admit that android is better than ios.

    But I see these anti-android posts and they are just full of misinformation and phony made up stories. And these isheeps always claim to have owned multiple high end android devices and stuff. Its just so unbelievable now that I just have to call BS on virtually every anti-android post.
  17. wonderspark macrumors 68040


    Feb 4, 2010
    Even my *old* Android phone running 2.3.5 is a pleasant experience.
  18. chrisrosemusic1 thread starter macrumors 6502a


    Jan 31, 2012
    Northamptonshire, England
    If I hadn't taken it back this morning I would video how absolutely dog **** GTA runs without any apps running in the background. Frame rate is choppy as ****, regardless of what your opinion is.

    I wasn't asking for a fanboy war because as you can tell from my signature I also own a windows PC so apple isn't my only home. I think if you read many reviews on said games above you'll find a lot of other people complaining about it.

    You can enjoy your android, I wasn't asking for a debate about which is best but more for how 5* games on iOS are 3 star with complaints on google play. So how about shut the hell up and criticising my situation and what I own, and how that performs in relation to my expectations and previous experience and move along.
  19. Renzatic Suspended


    Aug 3, 2011
    Gramps, what the hell am I paying you for?
    What you're talking about here is framerate. That's always been a problem with Android devices.

    ...though I thought this was something Jellybean fixed. Aren't all the UI elements supposed to be scrolling around at at least 60FPS with Vsync on?
  20. SlCKB0Y, Jan 18, 2013
    Last edited: Jan 18, 2013

    SlCKB0Y macrumors 68040


    Feb 25, 2012
    Sydney, Australia
    I've found this to be the case.


    Here are the ones you mentioned:

    GTA VC

    Android https://play.google.com/store/apps/...wsMSwxLDEsImNvbS5yb2Nrc3RhcmdhbWVzLmd0YXZjIl0.

    iOS https://play.google.com/store/apps/...5nYW1lbG9mdC5hbmRyb2lkLkFOTVAuR2xvZnRNNEhNIl0.
    Less than 4/5

    N.O.V.A 3

    Android https://play.google.com/store/apps/....android.ANMP.GloftN3HM&feature=search_result

    iOS: https://itunes.apple.com/en/app/n.o.v.a.-3-near-orbit-vanguard/id474764934?mt=8

    Modern Combat 4

    Android https://play.google.com/store/apps/...5nYW1lbG9mdC5hbmRyb2lkLkFOTVAuR2xvZnRNNEhNIl0.

    iOS: https://itunes.apple.com/us/app/modern-combat-3-fallen-nation/id442522082?mt=8

    Well you've got multiple people in here telling you that what you are seeing with your Nexus 7 is not normal and not what they experience.

    Did you try this or do you just want to moan?
  21. RetepNamenots macrumors 6502

    May 30, 2009
    I disagree. When was the last time you had a problem running a program on a Windows PC because your hardware was slightly different to the developers'?
  22. MonkeySee.... macrumors 68040


    Sep 24, 2010
    I've heard from a Dev for both iOS and Android and he said Android is a nightmare. Mainly due to resolution.
  23. Dave.UK, Jan 18, 2013
    Last edited by a moderator: Jan 18, 2013

    Dave.UK macrumors 65816


    Sep 24, 2012
    Kent, UK
    I'm sure you did. I love how everyone on here is either a developer or knows a developer. Also amusing how all the developers dont like coding for Android :rolleyes:
  24. NumberNine macrumors regular

    May 12, 2011
    Something is "off" about Apple disciples
  25. Rodimus Prime macrumors G4

    Rodimus Prime

    Oct 9, 2006
    There is just so much wrong with your post and clearly a lot of ignorance and FUD.

    Not a big issue there. This falls under FUD.
    Umm give you a hint you should never be doing memory management when you code. It is generally best to always leave it to the OS to handle it. Reason being is because that is generally done by people who have a much better understanding of how that works, the underlining issues of the OS and people who specialized in it. Most developers should NEVER touch those issues for they can and will screw things up. Also in iOS6 and on Apple encourages very strongly to let the OS handle memory management. You the dev should not be doing it.
    Minor at best.

    Again as pointed out above if the programmer is doing the memory mangament the programmer is doing something wrong. That should not be done. Let the OS handle it. Otherwise chances are pretty good you will cause memory leaks, not do it correctly and not as well.

    As for the UI scrolling that is a different in design of the OS. iOS has all UI stuff run at real time and as such over rides anything else and it will freeze other processes to handle it. Android UI runs at normal level and as such it shares the CPU with other threads and processes. iOS there is no sharing. The UI thread over rides everything else.
    Most of this was covered about. There there is just a lot of FUD in this.

Share This Page