Обновление: исходный код приложения Soundboard - PullRequest
0 голосов
/ 08 декабря 2011

ОК, я получил его на работу. Это сохранит файл в качестве мелодии звонка, уведомления или тревоги в зависимости от контекстного меню. (Только функция рингтона показана из-за экономии места)

Нужна помощь с:

По какой-то причине по прошествии некоторого времени звук не воспроизводится (около 20 или около того нажимает и не будет воспроизводиться снова, пока вы не выйдете из приложения и не запустите его снова) Также мне сказали "/ sdcard / media / etc" не "правильный способ" сделать это.

Если у кого-то есть предложения по

1. отпустить / приостановить / остановить воспроизведение звука при нажатии кнопки «Домой», получении текста или нажатии кнопки «Назад» для выхода из приложения и т. Д.

и

2. правильный способ получить sdcard. Я бы оценил это.

MediaPlayer mp1;
MediaPlayer mp2;
MediaPlayer mp3;
MediaPlayer mp4;
MediaPlayer mp5;


protected void onDestroy() {
super.onDestroy();
if(mp1 != null){
    mp1.release();
}
if(mp2 != null){
mp2.release();
}
if(mp3 != null){
    mp3.release();
}
if(mp4 != null){
mp4.release();
}
if(mp5 != null){
    mp5.release();
}
}

protected void onPause() {
super.onPause();
if(mp1 != null){
    mp1.stop();
}
if(mp2 != null){
mp2.stop();
}
if(mp3 != null){
    mp3.stop();
}
if(mp4 != null){
mp4.stop();
}
if(mp5 != null){
    mp5.stop();
}
}
}

protected void onResume() {
super.onResume();

}

1 Ответ

0 голосов
/ 14 декабря 2011

Ответ на вопрос 1: Добавьте метод onPause к своей деятельности и вызовите метод MediaPlayer stop().Вы также должны добавить метод onDestroy и вызвать release, чтобы освободить ресурсы, используемые медиаплеером.

Ответ на вопрос 2: Посмотрите на этот пост .Для получения более подробной информации читайте информацию для разработчиков Android на Data Storage

...