How hard it is to make iOS Apps run on Mac OS X?

Discussion in 'Mac Programming' started by v2club, Oct 28, 2011.

  1. macrumors regular

    Joined:
    Apr 13, 2011
    #1
    The iTunes store has tons quality apps, Mac app store... not at all. So how hard it is to transform an iOS app into Mac app? Obviously I'm not talking about apps using the proximity sensor or the gyroscope.
     
  2. macrumors 68000

    thewitt

    Joined:
    Sep 13, 2011
    #2
    There is an emulator in the developers kit that will do this now...
     
  3. macrumors Core

    miles01110

    Joined:
    Jul 24, 2006
    Location:
    The Ivory Tower (I'm not coming down)
    #3
    Depends on how good you are at coding. Your question is basically pointless. How do you quantify "hard" ?
     
  4. thread starter macrumors regular

    Joined:
    Apr 13, 2011
    #4
    1. Since this emulator exists, I guess only the developer who has developed the app can "transform it". So if it's that easy (I guess having an emulator makes it easy) why they (the developers) don't do it?


    2. Hard = developing a completely new app for Mac instead of converting an iPhone one.
     
  5. macrumors newbie

    Joined:
    Apr 18, 2008
    #5
    Conversion has to be done at the source-code level. The developer who wrote the app either has to do the conversion themselves or hand the source code for someone else to do it.

    The difficulty and speed of the conversion really depends on how the original app was coded. If it was coded with the idea of running it on different platforms in the future, the application's logic will be neatly separated from the application's user interface. That would be a relatively easy conversion. The application logic and data storage would probably require few changes, but the UI would have to be rewritten to use an OS X user interface. This might be even easier if the developer did a lot of the UI themselves (Plants vs. Zombies or other Popcap games, for example), relying on as few iOS-native elements as possible.

    If the developer did not make good design decisions when coding or intended that the application would only run on iOS, the application's UI code is probably interspersed with the logic code and all the application code makes assumptions on what the UI will look like (touch screen with gestures). That makes conversion a lot more difficult, and a lot of the application will have to be rewritten.

    So, if the developer designed the application well in the first place, conversion will be quick and easy. Otherwise, it could be long and difficult. This is not just an iOS/OS X issue, but an issue for any sorts of cross-platform applications (Windows/OS X/Linux for example). The design decisions that were made when the application was initially developed make a huge difference in how easy it is to port it to another platform.
     
  6. macrumors 68030

    Catfish_Man

    Joined:
    Sep 13, 2001
    Location:
    Portland, OR
  7. macrumors 68040

    Joined:
    Apr 22, 2005
    #7
    The iPhone simulator has always been in the SDK and has nothing to do with distributing iOS apps that will work on Mac OS.

    There is an open source project that attempts to port much of UIKit to Mac OS, and it works pretty well:

    http://chameleonproject.org/
     
  8. macrumors 68030

    Catfish_Man

    Joined:
    Sep 13, 2001
    Location:
    Portland, OR
    #8
    Except you'll still end up with apps designed for small touch screens with no-multiwindow support running on large non-touch screens with multiple windows...
     
  9. Moderator emeritus

    kainjow

    Joined:
    Jun 15, 2000
    #9
    I disagree, but this is off topic.

    If you've never done AppKit programming before, I'd consider it hard.

    As Catfish_Man said, you will have to redo the UI entirely and rethink how you will want your UI to function. If you have a game it'll be straightforward, otherwise you'll need to figure out the best way to represent your data using OS X controls.
     
  10. macrumors 68040

    Joined:
    Apr 22, 2005
    #10
    Yes, but in some cases a UIKit-style app can work fine on a Mac. Carousel (an instagram client) is a good example that uses Chameleon.
     
  11. macrumors G5

    Consultant

    Joined:
    Jun 27, 2007

Share This Page