If you're just breaking into mobile app development, you may be wondering whether you should start with Android development or iOS development. These are very different environments. Though they both come with some robust tools, the choice is likely to have an impact on your path as a developer.
Choosing Android: The Benefits
The Android app marketplace is a lot like the wild, wild west. It costs less to publish to Android, but you're also in competition with far more apps. Some of those apps even have viruses, which make users less likely to trust apps that haven't been tried out before. In terms of actual development, Android devices aren't any more difficult to program than iOS devices.
However, there are a lot more Android devices out there than iOS, and Android devices are in nearly every smart wearable device and smart home device. This is something to think about if you think that you're going to be branching your development into things other than smartphones and tablets.
Choosing iOS: The Benefits
iOS has a much better-curated marketplace than Android. Though it costs more to get into the app marketplace, you're more likely to make money on your downloads. At the same time, it's also difficult to get into the iOS marketplace. Many developers have stories about being rejected multiple times and not knowing precisely why their app was being rejected.
Programming for iOS may be more niche than Android, but there are still a lot of iOS devices out there. It can also be a matter of demographics; if your audience is more likely to have an Apple device, programming on iOS may be more useful.
Not Making a Choice
What if you could have both? There are development platforms out there that can export to both Android and iOS. These development kits are often written on Java or C#. Some of them use their own proprietary language.
The downfall of this is that you're learning that system specifically, and your knowledge is going to be constrained to it. However, some fairly popular suites export out to iOS and Android, such as Unity.
When it comes to app development, it is often advised to start with either Android or iOS development. This gives you the core basics of app development and teaches you about the environment. As you grow as a developer, though, you might want to branch into a development kit that isn't platform specific.