Moving from iOS to Android?

Discussion in 'iOS Programming' started by ArtOfWarfare, Jul 5, 2012.

  1. ArtOfWarfare macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #1
    Hi, I've developed for OSX and iOS for years, but am looking into getting a job at a company as a mobile app developer responsible for making both an iOS and Android app, with the Android app being the priority.

    Does anyone have suggestions on moving from iOS to Android? I think I'm going to need to learn Java... how long will that take (right now I only know C, C++, and Obj-C)? What IDE should I use? I've heard the name Eclipse tossed around... Is that necessary or will Xcode work? If I must use it (or something else,) how long will that take to learn? Is there anything like Interface Builder?

    Oh, and what fees will I (or the company) need to pay for me to develop for Android?
     
  2. jnoxx macrumors 65816

    jnoxx

    Joined:
    Dec 29, 2010
    Location:
    Aartselaar // Antwerp // Belgium
    #2
    Hey Art,

    Seriously think hard before moving onto Android, making an basic Android application is a living hell if you came from iOS.
    Thing is:
    -There have around 400 different devices, and normally you should be testing on each different one (or send it to a chinese company, there is one that does the testing for you on all 400).
    -You have alot of screen sizes, so you need to code that on each kind of ratio your interface is a tad different.
    -If you want to develop for Android 4.0/4.1 so ICS and Jelly Bean, like 9% of the entire Android community is on 4.0+, so 75% of your users can't even use the latest API.
    - Android itself is okay, but the changed Android skins/source for each phone provider is different, this means, if you sent a float to device 1, it will get back 8.07, but send it to a different device, and it might get 8.10, just giving some random things that happened to us before.

    You need to learn Java yeah, Eclipse/INtelliJ are the best options for you, since they are free. You need to download ANdroid SDK, import it in Eclipse, update, hope it works, you need to hand make your simulators, they take around 10 minutes to boot up, but debugging live on the phone is alot faster :)
    Developing for Android is free, putting it on the appstore is 25$ once for lifetime, or 18 euro ;)

    That's about what I had to say, I can go on and on if you want ;)
     
  3. Tander macrumors 6502a

    Tander

    Joined:
    Oct 21, 2011
    Location:
    Johannesburg, South Africa
    #3

    Fragmentation in the Android field is bad. This is why, I will never, ever develop for Android.
     
  4. ArtOfWarfare thread starter macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #4
    There are actually three apps I'd be making... in order of priority from top to bottom:

    1 - App for a custom device running Android, made by the company I'll be working for. So fragmentation won't be an issue with it.
    2 - iOS app capable of talking with the first app somehow... It'll need to be able to send commands to it and receive data from it.
    3 - Same app as #2, but for Android. This is the only one where fragmentation will be an actual issue, I think... But I kind of doubt it. Making resolution independent app interfaces doesn't strike me as hard at all (thus why I say supporting a new 9:5 iPhone would be trivial.) As far as hardware capabilities... It just needs a touch screen... Multitouch would be nice but not necessary... And whatever communication method it uses to talk to app #1 needs to be possible on as many devices as possible.
     
  5. xStep macrumors 68000

    Joined:
    Jan 28, 2003
    Location:
    Less lost in L.A.
    #5
    Wirelessly posted

    There are many more than simlpy 400. Android fragmentation: 15 ways to turn on the LED and 5000+ device variations! read more here: http://www.smallte.ch/blog-read_en_81001.html
     
  6. jnoxx macrumors 65816

    jnoxx

    Joined:
    Dec 29, 2010
    Location:
    Aartselaar // Antwerp // Belgium
    #6
    That kinda describes like I said -> floats/ints mean different things on different android devices (with same code). It makes it a living ****ing hell. Sorry for swearing. but that's it, that's why i'm going for Microsoft Surface instead of the Android
     
  7. CodeBreaker macrumors 6502

    Joined:
    Nov 5, 2010
    Location:
    Sea of Tranquility
    #7
    Is it that bad? I don't have an Android phone (or an iOS device). Also, can we test code in Android x86 (in a virtual machine)?

    Objective C code can be read like a poem :) Even a non programmer can understand what is happening in the code. How is Java?
     
  8. xStep macrumors 68000

    Joined:
    Jan 28, 2003
    Location:
    Less lost in L.A.
    #8
    I've been thinking the same thing, well if I pick up another mobile platform. Metro looks interesting and dipping my toes into the Microsoft ecosystem maybe a good safety net, even if they are on a decline.
     
  9. nuckinfutz macrumors 603

    nuckinfutz

    Joined:
    Jul 3, 2002
    Location:
    Middle Earth
    #9
    I think Microsoft is going to pick up a lot of developers. They have a mobile strategy and solid development tools and they're not trying to promote "Free" apps.

    I'm not going to bust my ass to develop apps that no one wants to pay for.
     
  10. firewood macrumors 604

    Joined:
    Jul 29, 2003
    Location:
    Silicon Valley
    #10
    So what kinds of issues will an Objective C programmer encounter when learning Java for Android? Is garbage collection any easier than ARC? Or will it create its own set of problems? Any Java syntax that will seems as weird to an Obj C programmer as all those Obj C brackets and @ signs look to a Java programmer?

    Are there any commonly used kinds of APIs in UIKit that are missing with no roughly similar counterpart in Android?

    How bad is Eclipse compared to Xcode? (which seems to have its own problems...)

    Rumor is that an Android devs are now all the way up to making 20% of what iOS devs make from similar apps. Small, but not as close to zero any more.
     
  11. TouchMint.com macrumors 68000

    TouchMint.com

    Joined:
    May 25, 2012
    Location:
    Phoenix
    #11


    I plan on checking out win 8 phones for sure. I do think I will skip any android dev tho.
     
  12. PhoneyDeveloper macrumors 68030

    PhoneyDeveloper

    Joined:
    Sep 2, 2008
    #12
    On the plus side you can do all your Android development on a Mac.
     
  13. ArtOfWarfare thread starter macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #13
    Excellent, thank you for telling me this. Will the Android simulators work on OSX too?
     
  14. xStep macrumors 68000

    Joined:
    Jan 28, 2003
    Location:
    Less lost in L.A.
    #14
    Ditto for Windows & Surface development.
     
  15. macuser1232 macrumors 6502a

    macuser1232

    Joined:
    Jan 20, 2012
  16. ArtOfWarfare, Jul 6, 2012
    Last edited: Jul 6, 2012

    ArtOfWarfare thread starter macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #16
    I really liked this online ebook for learning C:
    http://c.learncodethehardway.org/book/

    Do you know of any similar materials for learning Java? (That is, free, concise, and comprehensive?)

    Edit: I just thought I'd let you all know that I was able to, after fudging around for an hour or two with this tutorial, able to get a hello world app to launch on a virtual Galaxy Tab on my iMac (running the most recent ML beta.)

    http://www.makeuseof.com/tag/write-google-android-application/
     
  17. jnoxx macrumors 65816

    jnoxx

    Joined:
    Dec 29, 2010
    Location:
    Aartselaar // Antwerp // Belgium
    #17
    They surely do work, ANdroid has nothing against OSX, most of the developers who made the Android platform are big fans of Macbooks with OSX.
    They have full support for OSX, so they also made all things available for UNIX, like ADB debugging and so on. It works great on OSX.
    For windows phone, I have a VMWare Fusion + Bootcamp for running Windows on the mac, so no problem making apps for that too :)
     

Share This Page