Mobile App Screen Size Pitfalls

In my recent post with my thoughts on the iPad, I noted that while the iPad will run iPhone apps, they won’t look that great.  Instead, developers will need to create new iPad apps.

“That’s fine!” you exclaim, thinking that you’ll just uprez your widgets and artwork from your iPhone app to the new iPad screen size.  Problem solved, right?  Apparently Apple thought so too and tried creating iPad sized versions of their default iPhone apps.  And apparently that idea sucked.  From Daring Fireball:

It’s not that Apple couldn’t just create bigger versions of these apps and have them run on the iPad. It wasn’t a technical problem, it was a design problem. There were, internally to Apple (of course), versions of these apps (or at least some of them) with upscaled iPad-sized graphics, but otherwise the same UI and layout as the iPhone versions. Ends up that just blowing up iPhone apps to fill the iPad screen looks and feels weird, even if you use higher-resolution graphics so that nothing looks pixelated. So they were scrapped by you-know-who.

Think this is just an Apple problem?  No, it’s a mobile device problem!

Desktop and web app developers have it easy.  Most computer screens are large, and any variation in size can usually be glossed over by either the OS or web browser.  Nobody really uses computer screens smaller than 640×480, while many people now have 48″ screens that leave HD in the dust.

Mobile is a totally different ball game.  Apps are modal, meaning your app has to account for all of the screen real estate.  If it’s too big or too small, it will either fail to display or display incorrectly.  Even Engadget recently lamented how they had trouble getting apps to run on the Nexus One:

I recently tried to install one of the few good Android games and found it won’t work on Nexus One as it has a nonstandard screen resolution.

Fortunately, Android developers have it a little easier than iPhone/iPad developers.  The Android platform comes with no guarantees about screen size, so the platform has supported dynamic screen size features since version 1.6.  Android developers should read this article and become very familiar with how to use these techniques.

Apple developers have it a little tougher.  The iPhone and the iPad are fundamentally differently sized devices, and if even mighty Apple’s iPhone apps work poorly at iPad sizes, then it looks more and more like the two are separate platforms entirely.  That may mean iPhone developers need to start over for the iPad.

Mobile developers, what do you think?  Any tips and tricks to share?

5 Responses to “Mobile App Screen Size Pitfalls”

  1. Casey Borders said:

    Nice article! I am an Android dev and my current job had me porting iPhone code and it was a MESS to clear up all the places where it had hard coded screen size! Luckily Android offers a lot of great tools that let devs deal with multiple screen sizes pretty easily. I have tested the iPhone port on QVGA, HVGA, WVGA and WVGA-Long and it all looks good!

  2. Brad Sellick said:

    A couple things:

    1) in Cocoa Touch it is pretty simple to grab the window size of the device and use it as a basis of drawing views on screen. I have personally coded a simple app framework this way that worked on both the iPhone and ipad simulators.

    2) however what the ipad brings to the game is not only screen size but new opportunities from a usability perspective. Especially with respect to touch events and interacting with an app. I can’t find it at the moment, but there is a great article going around by Matt Gemmell that goes into detail on this.

    From a testing perspective, the ipad is a new ballgame. The addition of new view options, touch events, yes screen size, and processor power means the possibility of creating more complex apps that are highly interactive. Usability will be an important testing requirement especially in the early days while people still figure this device out.

  3. Stanton Champion said:

    Brad,

    From your experience, are people using the Cocoa methods to figure out the device screen size?

  4. Brad Sellick said:

    Quite likely not because it was easy to think “I don’t have to”.

    The ipad changes that significantly. To quote Captain James T. Kirk “We got caught with our pants down”.

    Bonus points if you know which movie that is from :)

  5. Anders said:

    I just can’t imagine how anyone ever thought they could just upscale their iPhone app and it’d be fine. It’s the exact same thing as when you go from a computer to a phone, you can’t just downscale what you already have and be done with it, you have completely different interactions to consider with the varying screen sizes.

    But above all, just upscaling your iPhone app really is a lack of imagination. Why would you want to impose the limits of the small screen on your app, now that you don’t have it any more?

    Good article and important to keep in mind for anyone in this business!

Leave a Reply