This is a sort of after thought and comment on my previous post where I "complained" about learning a new API.
Most of my experience with Java has been not in developing application but rather designing APIs and programming platform (for instance MeTA Studio http://code.google.com/p/metastudio/). Where as, whenever I had used other languages (C, C++, Fortran, Python...) it was mostly for application development. Developing good and usable APIs do require fair amount of thinking and design tactics to be put in. Developing pure application on the other hand is, many a times more faster and easier job. A good API need not be "learned", rather it is apparent form it as to what you can do with it. You do not "learn" a good API, rather you cleverly "use" them to build applications.
In that sense probably Android APIs are "pretty good".