I have many concerns about Android, mostly the fact that it's a Java ripoff that does not run Java, that there is no consistency between the apps, etc...
I'm not a huge Java fan myself, so for me its not terribly relevant that this is some sort of altered-Java scenario - although fwiw, the majority of the Java code I've needed to write/port to Android works pretty well. I'd much rather be doing it all in C/C++, but actually these days with moai (
http://getmoai.com/) I'd rather just be using Lua anyway.
About the SDK itself, my problem is that it is not scriptable: You can't batch the creation of the application and for example run it in a build system. I would be happy to be proven wrong, and if you can provide me with something that can be 100% automated I would happily listen and learn how to do it.
Hmm .. not sure about this, personally. I have my library tightly packaged with my Android project sources, and to build I just simply do "ndk-build && ant build" on the command line - you *can* build Android projects through a script-like interface, it just requires you use ant and set up the project Ant files accordingly - by default, of course, the SDK assumes you will use the Eclipse environment, but this is by no means enforced. Have a look here:
http://developer.android.com/guide/deve ... dline.html
The tools provided in the Android SDK may not be what we're used to, but the 'android' tool and 'adb' tool, along with 'ant' and 'ndk-build', should be about all you need to accomplish your goal of unattended/scripted builds, really .. just needs a bit of document-reading, methinks.
I call "piece of shit" something that requires various parts made by first parties to be installed in a particular order, requiring a number of tools to be used, with nothing being automated.
Just as a counter to this, I've found the experience of downloading the NDK and the SDK and using them side-by-side to be quite refreshing, to be honest.. I haven't had any problems other than that I need to set up my path to point to the NDK and SDK tools/ & platform-tools/ directories and off we go .. 'ant build', 'adb logcat', and so on .. I don't know what you're referring to with installing things in a particular order, but I think its only fair that if you want to use a C-based lib in an Android project, you build the C lib first, package it in the bundle, and then build the project.
One thing that confuses/annoys a lot of us cmd-line-builder types is the Ecipse "auto-build" feature, which can be confusing at first if you don't understand the build steps. Whereas I used to just always reflexively hit the "Build" button, though, now I just do a full project clean to make sure things get sorted as necessary - the generation of the R resource, and so on, can be a bit upsetting if you don't understand why it needs to be generated and for what purpose you do not maintain your own resource-baking steps..
I call "good sdk" something that allows me to download one single installer that goes through all the steps of setting up all the stuff for me, and then it just does work.
If you're referring to the hassles of setting up Eclipse, I can truly understand that, but having done it myself now 5 times or so, I find it not so annoying as I did once before. The good news is that you don't have to use Eclipse - you can just download the NDK+SDK, put them in a sensible location, and off you go ..