Sony Ericsson has a pure Java audio recognition app, called TrackID, on their new Android phone. It has also been available on J2ME and presumably other phones for a while. It was developed by Cybercom.
However, it doesn't generate a fingerprint — the audio data is sent to a remote server for identification. As you need to be online anyway to do track identification, I imagine most music recognition apps work in this way.