Java ist die "native" Programmiersprache von Android, damit ist es natürlich möglich, mit Java ein APK zu erzeugen. Das offizielle API für Android ist eine Java-Bibliothek. die "Facaden", die da ASE anbietet, sind nur Wrapper für das offizielle API. Letztlich muss man dieses kennen, so befürchte ich, und dann muss man auch wenigstens so viel Java kennen, dass man die API-Beschreibung versteht. Und dann kann man auch gleich Java machen.
Schwerer als Python ist die Sprache sicherlich, insbesondere muss man sich mit einer vergleichsweise schwergewichtigen IDE (Integrierte Entwicklungsumgebung) auseinander setzen. Die offizielle ist von Eclipse, ich finde Jetbrains IntelliJ IDEA (
http://www.jetbrains.com/idea/) aber besser. Was für einen Anfänger weniger schwergewichtig ist, kann ich schwer beurteilen, würde aber denken, dass IntelliJ weniger furchterregend ist. Dafür hat man im Gegensatz zu Eclipse und dem Android-Plugin keine Editoren für die ganzen XML-Dokumente, sondern muss sie als XML schreiben.
Theoretisch könnte man auch Android-Anwendungen in Scala schreiben. Die Sprache sieht ein bisschen mehr wie Python aus, ist aber IMHO nochmals schwerer als Java, wenn man denn ihr Typsystem wirklich verstehen will. Theoretisch geht auch JRuby. Das hätte glaube ich noch die größte Community, was die dynamischen Sprachen angeht. Mit Mirah (
http://www.mirah.org/) kann man sogar die selbe Geschwindigkeit wie mit Java erreichen, aber die Leute, die diese Sprache einsetzen, kann man wahrscheinlich an einer Hand abzählen... faszinierend, doch letztlich sind für Java die Pfade am ausgetretenen.
Eigentlich müsste man auch Jython unter Android benutzen können -- oder mein leider unfertiges Smython (
https://github.com/sma/smython3). Da das keine Bytecode-Manipulationen benutzt sondern ein klassischer (leider langsamer) AST-Interpreter ist, würde das problemlos laufen. Muss ich mal bei Gelegenheit ausprobieren
Vielleicht ist ja auch der App Inventor (
http://www.appinventorbeta.com/about/) noch eine Alternative.
Stefan