Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Playing local audio file in Android webview app

I have a simple Android webview app, built with Phonegap Build. When trying to play a local mp3 file that's included in the APK, nothing happens. However, if I pull an mp3 from the web it works.

e.g.

<audio src="www.example.com/01.mp3" > WORKS JUST FINE

<audio src="01.mp3" > DOES NOT WORK

I'm new to Android development, so I can only guess that the file is somehow inaccessible by Android's media player. Here's a link to the errors/warnings from my log file if that helps shed any light on the problem.

http://pastebin.com/isS542RE

like image 804
Justin Avatar asked Feb 08 '12 21:02

Justin


2 Answers

I have it working using Phonegap's Media class. I must have been doing something wrong initially, but I'm not sure what. The proper way to access it through the media object is as Simon stated previously: myMedia = new Media("/android_asset/www/test.mp3");

You have to put the full path as the media class defaults to the /SDCARD directory on relative paths.

Simon also has a great write up about using the media class: http://simonmacdonald.blogspot.com/2011/05/using-media-class-in-phonegap.html?m=1

As for the HTML5 method and using the AUDIO tag, I'm still not certain why it fails on local files. Phonegap's media class works just fine though and is probably a more reliable solution anyhow. Phonegap FTW!

like image 143
Justin Avatar answered Oct 18 '22 20:10

Justin


Have you tried pointing the file to the local file system path using "file:///android_assets/01.mp3" assuming your .mp3 is within the applications assets directory?

like image 30
mhradek Avatar answered Oct 18 '22 21:10

mhradek