Forgot your password?
typodupeerror
Programming IT

The Headaches of Cross-Platform Mobile Development 197

Posted by samzenpus
from the hard-stuff-is-hard dept.
snydeq writes "Increased emphasis on distinctive smartphone UIs means even more headaches for cross-platform mobile developers, writes Fatal Exception's Neil McAllister, especially as users continue to favor native over Web-based apps on mobile devices. 'Google and Microsoft are both placing renewed emphasis on their platforms' user experience. That means not just increased competition among smartphone and tablet platforms, but also new challenges for mobile application developers. ... The more the leading smartphone platform UIs differ from one another, the more effort is required to write apps that function comparably across all of them. Dialog boxes, screen transitions, and gestures that are appropriate for one platform might be all wrong for another. Coding the same app for three or four different sets of user interface guidelines adds yet another layer of cost and complexity to cross-platform app development."
This discussion has been archived. No new comments can be posted.

The Headaches of Cross-Platform Mobile Development

Comments Filter:
  • eh (Score:2, Insightful)

    by Anonymous Coward on Thursday January 19, 2012 @10:20PM (#38757128)

    I'd personally call them migraines.

  • by s73v3r (963317) <s73v3r.gmail@com> on Thursday January 19, 2012 @10:20PM (#38757134)

    If you're gonna do cross platform app development, at least make the effort to follow the platform's UI guidelines. As an Android user, nothing irks me more than having an app with the iOS icons and navigation buttons simply copied over. I'm sure the same is true for users of other platforms.

  • by phikapjames (811889) on Thursday January 19, 2012 @10:28PM (#38757190)

    The one thing that irks me a bit about this whole situation is them complaining that they just can't write the code once and have it work across the different platforms, yet I'm still required to buy the same software separately on each platform. In my mind, you justify the cost to make it work for that platform by selling it on the specific platform. My opinion would probably be different though if I was able to buy the app once and not have to pay on each separate platform.

  • by viperidaenz (2515578) on Thursday January 19, 2012 @10:53PM (#38757390)

    I wonder what it will take to "unite" them

    Nothing. They dont want to be united. The "app" ecosystem is a competitive advantage for the OS. If all the apps are available for all the platforms, its no longer an advantage. Where do you think the "There's an app for that" slogan came from?

  • yeah, and...? (Score:4, Insightful)

    by DynamoJoe (879038) on Thursday January 19, 2012 @11:09PM (#38757500)
    So platform diversity is great until you have to code for it? I'm not seeing a problem.
  • by hsmith (818216) on Thursday January 19, 2012 @11:17PM (#38757562)
    I built a rather extensive commercial App on iOS. By abstracting the data/business layers well, when going to android it was as simple as writing a lexer to convert almost all the code. What took me 1000 hours of development took 8 hours to port over.

    The only thing that was really required was writing the UI, which was targeted for Android.
  • by Anonymous Coward on Thursday January 19, 2012 @11:30PM (#38757654)

    And nothing irks me more than users of any system expecting everything to work exactly to same with all the bells and whistles attached. F-ME for being a web developer that's had to deal with the nightmare that was (and sometimes still IS) IE 6 and the fucking "it doesn't work on my iPhone."

    Sometimes, for production time purposes, and the rampant demands (re: bitching) of users, we have to take fucked up shortcuts to make things get done.

  • Thank You (Score:5, Insightful)

    by SuperKendall (25149) on Thursday January 19, 2012 @11:31PM (#38757658)

    As an iOS developer, I heartily thank you for continuing to use cross platform development solutions that leave such a wide gap for someone to come along and write a better native app.

  • Mobile? (Score:5, Insightful)

    by slasho81 (455509) on Friday January 20, 2012 @12:14AM (#38757818)

    This should have been: The Headaches of Cross-Platform Development. It's not just a mobile thing. Today, if you're developing any kind of client-facing software then it's not just Android vs. iOS vs. WinPhone vs. BlackBerry. It's also PC vs. Mac vs. Linux. with IE vs. Chrome vs. Firefox vs. Opera. And of course, all of these on different devices with difference capabilities, most notably different screen sizes and input methods, and deployment options. So much wasted time and effort.

    We were on the right path with webapps for a while, but then suddenly native apps became all the rage. The worst "feature" by far of native apps is they have to be installed - the deployment issue is practically gone with webapps, but contained apps let you charge people for installation, so we went back to that.

    I pray HTML5 manages to become a capable and dominant platform for the sake of both users and developers.

  • Re:Thank You (Score:1, Insightful)

    by Anonymous Coward on Friday January 20, 2012 @12:46AM (#38757992)

    The only cross platform apps I've seen that I'd consider "good" are games, and they're unique because they typically have entirely custom UIs.

  • Re:Mobile? (Score:5, Insightful)

    by ceoyoyo (59147) on Friday January 20, 2012 @12:55AM (#38758046)

    Webapps are like cross platform apps, but on top of that they're crammed into a medium that was never meant for them, so instead of being just non-ideal they truly suck.

    The only people who like web apps are the ones who don't have to use them (managers) and people who liked the idea of being able to get their e-mail anywhere, before everyone started carrying smartphones with... a native e-mail app.

  • by Anonymous Coward on Friday January 20, 2012 @04:07AM (#38758756)

    Please spare us your software entirely in future then.

  • by beelsebob (529313) on Friday January 20, 2012 @06:20AM (#38759242)

    No, that's exactly how bad cross platform apps work. Good ones code the back end once, and have a different UI module for each platform interfacing onto it.

  • by gatkinso (15975) on Friday January 20, 2012 @07:38AM (#38759582)

    Who said it was hard?

    What it is, is a royal pain in the ass. So where is your unified API that wraps all of the Android, Kindle, iOS, and Windows devices allowing a body to write once and deploy everywhere, having said app look and act like a native app?

    Oh, that's right. I should have figured: up your ass. Right there beside your head.

  • by TheRaven64 (641858) on Friday January 20, 2012 @07:42AM (#38759596) Journal

    There's no way of writing code that is portable between iOS and Android

    There are several ways. If you want something using exactly the same codebase, companies like Adobe will sell you development platforms that wrap the native APIs and give you something that doesn't quite look or feel native on either. A better approach is to use GNUstep-base to provide an implementation of the Foundation framework on Android and then rewrite your UI for each platform but share the model code.

    We've been through this before with desktop apps. If you want a good cross-platform application, make sure that your code uses a very clean MVC separation and rewrite the UI part for each platform. Otherwise you end up with something that, at best, only behaves well on one platform, and at worst feels wrong on all of them.

Only God can make random selections.

Working...