Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Which is a better career Android vs iPhone app development. Android has the advantage of beingopen source while iPad/iPhone is one of the best product in the market and Apple is leading the mobile industry now. What would be pros and cons of each career and can iPhone developers move into Android easily?

Please let me know if anyone has a experience in either of these areas

share|improve this question

closed as not constructive by Mark Trapp Sep 27 '11 at 21:27

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

7 Answers 7

up vote 9 down vote accepted

IMHO you don't have to choose.

Invest in both.

A company will want to have his app on both.

Also please consider Windows Phone 7.

I've been following the developments of mono that will help share code between the three plaforms.

share|improve this answer
1  
MonoTouch is nice but somewhat expensive... –  user1249 Nov 14 '10 at 20:45
3  
Depends how much you can save from using it –  user2567 Nov 14 '10 at 21:27
    
+1 you don't have to choose. In fact, apart from development languages, a lot of the skills are transferable (e.g. presenting information in a limited amount of space, building a touch-only interface, developing for a relatively low-spec device, etc) –  Dean Harding Nov 14 '10 at 22:32
    
+1 Investing in both seems like a smart way to go even if you only want to use one –  eds Dec 12 '10 at 1:19
    
@Thorbjørn really really expensive, I believe that this worth it only when you have a massive codebase you can reuse... –  David Conde May 20 '11 at 18:06

iPhone development requires significantly higher initial investments, you pay with your time, nerves & money: Mac OS X 10.6 device + iPhone + Apple Developer Account(mandatory for even testing application on real device!) + learning that obscure Objective-C thingie + praying for getting your app accepted into Appstore.

With Android you are productive almost immediately without ANY investments or stress: you can run Linux/Android on almost anything and for free, Java is a standard, optional developer account (much cheaper than Apple's, only required for publishing on Google Store). You can sell you app on your website :-)

On the other hand, iPhone developers make from their paid apps money.

Android ones don't (yet) :-)

share|improve this answer
2  
Are you trying to tell me that, as a practical matter, I can program for Android phones without having one? And that, while Macintoshes cost money, Windows or Linux boxes are free? Or, for that matter, that learning a different C-based object-oriented language is harder than learning how to write apps for pocket-sized devices? I think you're overstating the differences in investment here. –  David Thornley Dec 23 '10 at 15:16
    
Developing for iOS cost me exactly $100 (I already owned an iPhone and a Mac). Are you telling me that I can get a contract-free Android phone suitable for serious development for significantly less than $100? –  kubi Jan 17 '11 at 2:37
5  
@kubi: "I already owned an iPhone and a Mac". Now imagine you didn't. –  Groo Jan 25 '11 at 10:33
    
@Groo How is that applicable? When the OP says, "With Android you are productive… without any investments…" he's making the assumption that you already own a PC and an Android phone. –  kubi Jan 25 '11 at 12:13

There is currently more revenue flowing through the iPhone App store than for all Android apps together, and maybe around the same number of developers for each platform. More revenue in a market generally (but not always) means the possibility of negotiating a higher pay rate. That may change over time, but you can track that and widen or change your specialty.

For hot projects, companies pay more for top specialists, so it might be better to be really expert in one platform, either iPhone or Android, than to have only basic competence in both.

share|improve this answer

I have a pretty successful Android app on the market and I've been working on the iPhone version for a month or so now, getting it ready for submission to Apple.

So I would definitely pursue both platforms.

The publishing process is certainly much easier for Android, but aside from that they are similar environments, despite the different languages involved (Objective-C vs Java).

As an experienced Java developer I was a bit resistant to learning Objective-C at first, but once I dove in, it turns out its pretty easy. Probably easier going from Java to Objective-C than the other way around, but hard to say for sure.

Don't forget about design. Probably the hardest thing about app development is the design (look and feel), not the code. The code is easy. Making it look good and deliver a great user experience is difficult (at least for programmer types). So make sure you have a good designer to work with, otherwise all the great code will go to waste.

I spent a bit more time worrying about design for the iPhone version, in part because of fears of being rejected for not following Apple's UI guidelines. So make sure you read those up front, and follow the patterns that Apple uses and suggests.

share|improve this answer
    
I started on Java and went to Objective C. I hate it and still hate it. One line of code is usually 20 lines in XCode. Try parsing strings (you have to use a scanner) and for each class you must use two files that if you group on XCode they will still be a mess on the finder. –  Dante Nov 26 '13 at 18:05

Advantages of Apple: App sales are likely to be significantly better currently, no fussing over hardware differences.

Advantages of Android: No need for a Mac, Xcode, and Objective C, use your (likely) familiar Java. It's quite possible that Android phones will eventually be more popular than iPhones.

share|improve this answer
1  
Android phones will doubtlessly be more popular than iPhones soon, if they aren't now. The real battle between Android and iPhone will be for ad views (which Android will almost certainly win) and paying customers (which Apple will almost certainly win). –  kubi Jan 25 '11 at 12:20
    
What makes you think Java is familiar for me (or for Nishant)? –  Tom Brito Jan 28 '11 at 11:53
2  
The number of Java devs far exceeds the number of Objective C devs. And the number of devs that don't know any Java is far smaller than the number of devs that don't know any Objective C. (source: it's just obvious) –  Eric Wilson Jan 28 '11 at 20:34

There are enough mobile development frameworks that can target Android, iPhone, and several others with a single codebase, that you not only don't have to choose, you don't need to learn different languages either.

For example, PhoneGap lets you write HTML+CSS+JS and still use the device's features (accelerometer/etc) - which is much simpler than having to learn Objective-C and Android's Java/XML dialects and whatever other languages the others use.

share|improve this answer
    
are they mature? I can do everything I would do in the native language? –  Tom Brito Jan 28 '11 at 11:52

I would say that today, iOS development would be a better Avenue to walk down, as it were. I'm not commenting on the relative merits of either platform, but if you're looking at career opportunities, then as of today, iOS is going to open more doors, and probably mean more money.

To be a truly effective Mobile developer however, you probably need to know iOS and Android. Pick one, get to know how the mobile space works, and the other shouldn't be that hard to pick up.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.