Username or EmailPassword
While this has been around for a while now, it is not an ideal way to test Android in my opinion. Performance was horrible to say the least. I don't know if this was specific to the machine I tried this on, or was common. But I found a different solution which some may enjoy more...
For those that have HTC phones, check out xda-developers.com. There you can find Android images that can either replace your WinMo OS, or dual boot. You can even install Android on your SD card and simply start it just like any other application. It will restart the phone in Android. This is great in that you can now get real world usage of Android.
The WebOS emulator and the Android emulator I both ran before I bought a Palm Pre, Android was less impressive. Now that I need a GSM phone, and didn't want to deal with AT&T, I switched to Android, but I still feel as an OS itself, Android is less than impressive. Especially from a look and feel standpoint.
HTC's Sense, Samsung's TouchWiz, whatever Sony Ericsson calls their various UIs, they all look and feel a bit differently. If you don't like the one that comes with your phone, you can try something like ADW.launcher, HelixLauncher, etc., and use alternative SMS apps and/or contact lists, email programs, and so on. Android is whatever you make of it.
Yes, Sense does improve it a bit. Mine comes with Motoblur, which is a lot less of an improvement, mostly because it's closer to Vanilla Android. (Well, Android 1.5, which is the big downside to Motoblur and part of the overall Android fragmentation, which is another Android problem.)
Could someone please explain to me why android doesn't run natively on x86? It uses linux kernel and all the applications are in java. Porting to another architecture should consist of swapping the kernel image and "jre" to match the processor type, right? So where is the problem?
It's possible to have native code libraries in android applications.
Since afaik all available android devices are arm based at the moment, it's better for the emulator to be able to run those native libraries like a real device would, so you don't need a special x86 build of the native parts of your app just to run it in the emulator.