Thanks to ‘_aa_‘ for this comment:
I beg to differ. Java is perfectly capable of handling all aspects of digital music production. Because it runs in a virtual machine, load times can be increased as the virtual machine is loaded, but actual application performance is no different than C or any other byte compiled language. If all the other applications for Android are written in Java, then the virtual machine will already be resident in memory and load times will be indistinguishable from any other language.
Long story short. Performance is not an issue for Java.
I would point to JSyn (http://www.softsynth.com/jsyn/) as an example of real-time audio synthesis in a purely Java based environment.
I’m certain processor specific modifications will be required, but it will not be an insurmountable challenge to modify JSyn, or develop a new real-time audio synthesis API for Android. All manner of other music applications already exist in Java form.
Google is right to embrace Java. Plus Android is built on linux, so there’s no reason C code won’t execute on it, just as there’s no reason for there to not be a JavaVM for the iPhone, but Apple is blocking Sun from implementing it.
I don’t know much about Java to be honest, but this does sound interesting. I shall have to look into it in more depth. In the past I’ve tried mobile processing, but haven’t done anything with it for a while.
I know there’s been a lot of talk about a Sun Microsystems JVM for iPhone, but that’s gone quiet. Also, the IBM Micro environment for Palm OS is no longer available. As for Windows Mobile, I don’t know about a JVM for that platform.
So, if we can access useful JVMs for a platform, then maybe Java could be a useful and simple language for mobile music.