Implementing Beep Sounds Into Android Application
I have an application with the desired functionality. Howerver, at certain times toasts are displayed and I want a double beep to play at the same time that the toasts are displaye
Solution 1:
You can put your audio file in res/raw folder of your Project
and play audio in a thread
publicvoidplayAlertTone(final Context context){
Threadt=newThread(){
publicvoidrun(){
MediaPlayerplayer=null;
intcountBeep=0;
while(countBeep<2){
player = MediaPlayer.create(context,R.raw.beep);
player.start();
countBeep+=1;
try {
// 100 milisecond is duration gap between two beep
Thread.sleep(player.getDuration()+100);
player.release();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
};
t.start();
}
//call it like this from your activity' any methodif(myCondition){
Toast.makeText(getApplicationContext(), text, duration).show();
playAlertTone(getApplicationContext());
}
Solution 2:
Use MediaPlayer
,
http://developer.android.com/reference/android/media/MediaPlayer.html
There's a lot to know about how to use, which is covered in the link above. Here's a shirt snippet that illustrates the usage,
finalMediaPlayermediaPlayer=newMediaPlayer();
try {
mediaPlayer.reset();
mediaPlayer.setDataSource(...);
mediaPlayer.prepare();
} catch (IllegalStateException e) {
mediaPlayer.release();
} catch (IOException e) {
mediaPlayer.release();
} catch (IllegalArgumentException e) {
mediaPlayer.release();
}
mediaPlayer.setOnCompletionListener(newMediaPlayer.OnCompletionListener() {
publicvoidonCompletion(MediaPlayer mp) {
mediaPlayer.release();
}
});
mediaPlayer.start();
Solution 3:
try {
AssetFileDescriptorafd= getAssets().openFd("gavel_single.wav");
mMediaplayer = newMediaPlayer();
mMediaplayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
afd.close();
mMediaplayer.prepare();
mMediaplayer.start();
mMediaplayer.setOnCompletionListener(newOnCompletionListener() {
publicvoidonCompletion(MediaPlayer mMediaPlayer) {
mMediaPlayer.stop();
mMediaPlayer.release();
}
});
} catch (Exception e) {
e.printStackTrace();
}
put your music file in asset folder
Post a Comment for "Implementing Beep Sounds Into Android Application"