I've been trying to play audio from an external host in a Sencha Touch 2 + Cordova (PhoneGap) app on iOS. I cannot get it to play using either Ext.Audio or a Cordova Media object. (Note: the host serving the file is whitelisted.)

A test m4a file plays fine with Ext.Audio if it is packaged with the app, but when I try to play from an external server, it fails. It also works fine in Chrome and Safari, whether the URL is local or on another domain.

When I try to use Cordova, I get this error:

Failed to initialize AVAudioPlayer: The operation couldnt be completed. (OSStatus error 1685348671.)
What I understand from this Apple Technical Q&A is that AVAudioPlayer doesn't support playing non-local files. This seems to also be true of HTML5 audio elements, although I haven't seen documentation of that...

So... what techniques are people using to play audio from external sources? Download the file to the device, then play?