Приветик :)
Есть небольшой интерфейс между Webview и AndroidSDK
public class AudioInterface {
Context mContext;
AudioInterface(Context c) {
mContext = c;
}
//Play an audio file from the webpage
@JavascriptInterface
public void playAudio(String name, String src) { //String aud - file name passed
//from the JavaScript function
final MediaPlayer mp;
try {
AssetFileDescriptor fileDescriptor = mContext.getAssets().openFd(src);
mp = new MediaPlayer();
mp.setDataSource(fileDescriptor.getFileDescriptor(),fileDescriptor.getStartOffset(),fileDescriptor.getLength());
fileDescriptor.close();
mp.prepare();
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
И его вызов посредством Javascript
playSound("play_1","blabla.mp3");
Надо не только проиграть, но еще и уметь проиграть несколько, да еще и параллельно, к тому же иметь возможность контролировать (запускать, останавливать, удалять).
То-есть вероятно надо создавать обьект с именем из String name
playAudio(String name, String src)
вот тут
final MediaPlayer mp;
и далее
Или может быть у MediaPlayer есть какие то встроенные методы для этого.
Помогите супер-программисты, a.
Спасибо заранее!