3 ms·
The experiences are comparable. First, I'll address your concerns about code signing: Android doesn't require you to go through quite the same certificate/pro
by Magneus 17y ago
The experiences are comparable.
First, I'll address your concerns about code signing:
Android doesn't require you to go through quite the same certificate/provisioning profile insanity, but you will have to sign your applications before distributing them in the Android Market.
See here: http://developer.android.com/guide/publishing/app-signing.html http://developer.android.com/guide/publishing/app-signing.ht...
To develop on a device, it's brain-dead simple. Just plug in the device, install the driver (or config udev on Linux), and go!
Details here: http://developer.android.com/guide/developing/device.html http://developer.android.com/guide/developing/device.html
The one case where you need to get anything 'approved' is if you're going to use Google Maps. There's a quick automated process where you submit your development key in return for a maps API key.
See here: http://code.google.com/android/maps-api-signup.html http://code.google.com/android/maps-api-signup.html
Regarding development itself:
In terms of learning the development APIs and how everything fits together, I contend that Android is going to be tougher to learn at first, because you'll have to figure out fundamentals like Activity lifecycle, Intents, etc.
However, after you've gotten past the initial hurdles, I find that Android development (at least for the most part) feels more predictable and logically-designed than iPhone development.
In my experience, Android also has some better libraries out of the box. For example, doing basic REST calls, JSON, and SQLite are all in the standard library. On iPhone, you're best off using 3rd party libraries for each of those.
But there's always two sides to the coin. I find that iPhone is less structured, which can be good, depending on your tastes. I also feel that iPhone gives you a better-looking, better-feeling application with less effort (prettier default buttons, colors, animations, and there's always Interface Builder if you need it). If you're a game dev, also, iPhone tends to run faster and can utilize C libraries more readily than Android, whose ability to run C code relies on NDK/JNI, which can be a PITA.
To wrap things up, don't expect an entirely new process when you switch over to Android. If you didn't have the patience to stick it out on iPhone, don't think that Android will be the magic bullet that makes things easy. However, you'll be able to develop applications using the tools you like (not wedded to XCode), under the OS you like (Win/Linux/OS X), and best of all: no approval process to publish your applications. I've found that it takes minutes, as opposed to the App Store's days/weeks, for Android applications to arrive in the market.
I hope that helped.
P.S. I recommend The Busy Coder's Guide to Android. There's plenty of examples to get you started.
- biafra 17y agoI, too recommend the books by Mark Murphy. You can get the uptodate PDFs/mobi/epub versions at commonsware.com. Real books on Android (or any other fast moving technology) tend to be outdated when they reach the bookstore. For the price of one book you get three (the fourth about the ndk is due late april) with a one year update. Mark does more than one update in a year.