If you're thinking of starting your own development shop, then see my advice in this post to ignore technology and instead look at each platform's business model. Ask yourself if each platform really offers a way for the small developer to make money.
Each platform has tradeoffs in the business model. For example, the restrictive iPhone app store means that Apple might reject your app and it means that Apple can hold you responsible for any intentional or accidental mishandling of transactions through your app. On the other hand, owing to Apple's oversight and proven track record, end user are more likely to buy an unknown app from a small developer just to see if it might work for them. It is unlikely they would do so without some kind of oversight.
It will only take one major security breach to seriously damage a mobile's brand. If Andriod's more open model cannot secure their platform as well as the iPhone, the entire brand could be damaged by a single malicious app. If end users get burned once or twice by other developers, they will be less likely to take a chance on your app.
If you're going to make a living programing, you can't really specialize in a single language/API. You must learn good general programming practices as well as constantly educating yourself in new tools. You should be willing to learn any language and any environment. Of course, people specialize but from the perspective of a having a 30-40 years career, you have to stay flexible. Heck, when I was in college, Cobal (spit) was the big thing and everyone wondered if this new "C" thing was going to take off even though it looked a little dodgy. Now mumble-mumble years later, it seems like I'm learning a new language/API every week.
However, in starting out with your particular skill set and having to bootstrap everything you might be better off using an HTML based API such as PhoneGap. That will let you (1) leverage you existing skill set and (2) give you some flexibility when in choosing platforms.
Once you've made some money and got some experience under your belt, you can then train yourself up in the specific API of one or more of the major platforms.
Just remember that there is no one right answer for every developer. You bring you own history to the equation. Something that will work for you won't work for someone else. The opportunity cost of learning Objective-C or Java might be lower or higher for you than someone else. Likewise, for a bootstrap operation, if you could put out an app for a small platform in 30 days using your existing skill set, that would be better than taking a year to put out an app for the platform with the largest market share.
Whatever you choose, it's more important to begin executing as soon as possible than it is to plan out everything before you start. In my experience, dithering from excessive planning hurts you more in the long run than choosing a suboptimal path. In real life you don't actually "have to get it right" at the onset. What you have to do is be flexible and determined enough to recover from the many, many, many mistakes you will inevitably make.
Go with what you have, play to your existing strengths, get product shipped and learn as you go. Don't over think...
... just execute.