That answer might be unsatisfying, but I think there’s a more important question, which I’ll get to in a moment.
Underlying questions like “Do I need to know X” is the unwritten clause: “to get a job” or “to be successful” and the feeling of not wanting to learn X if you don’t have to.
I have that feeling — I know very little about Android. It’s not that I don’t want to venture out of iOS (iOS is probably my third or fourth full-time platform switch) — it’s that I know that there is only a finite amount of time I can spend on learning other things. For my goals, strengthening my back-end skills is a better use of time (and that would be my general recommendation).
To me the question is:
There are circumstances when full-time iOS developers should spend some time learing Android. Most of these are from my personal experience (which I have already said does not include much Android) — so, obviously, I might not know what I’m talking about.
My first brush with Android was when the team I was leading was assigned to build mobile versions of our image processing tools. I already had four or five years of iOS experience, so I was very comfortable there, but I did spend some time getting to know the parts of Android we were going to use. In this case, since we were making libraries, and not apps, that exposure was pretty limited.
But if you aspire to be a “mobile” lead, manager, product manager, or leadership in a mobile-first company, you can’t afford to be a blank on Android.
My next time with Android was when I was an independent contractor and I started to get work adding native iOS pieces to Cordova projects. Since I generally became an expert in Cordova, when I looked for other work, they typically needed the Android parts done as well.
Again, this is not like Android app development — it’s Cordova plugin development, but I did need to know how to do it for both platforms. (BTW, this site started with my Cordova tutorial screencasts).
This is obvious, so I’ll just list it here for completeness.
This is the case for me now. It is really convenient for me to be able to read the Android team’s code. I do this when I have to implement something in iOS that is already in the Android version.
I already know Java which is sufficient because most of the time I’m interested in network, algorithmic, and database code (not UI, which will be way different).
Of course not. Hey, you might have made a game on the side and now it’s climbing the iOS charts — porting to Android seems like a good use of time (even if you farm it out, it’s good to know something about the work required). And of course, if you just want to learn Android development, then go ahead.
Do you have different thoughts about this? Get in touch.
Added later: Read the follow-up: A snapshot of the iOS and/xor Android Developer Market