Как проигрывать рингтон один раз через MediaPlayer? - PullRequest
4 голосов
/ 22 июня 2011

Я не могу воспроизвести рингтон один раз, даже если свойство зацикливания медиаплеера установлено в false.Похоже, это свойство было переопределено используемым рингтоном URI.Таким образом, onCompletion никогда не запускается.

Любопытно, что если URI соответствует тональному уведомлению, зацикливание ведет себя согласно setLooping.Здесь хорошо работает.

Так есть ли способ воспроизвести мелодию один раз?

1 Ответ

0 голосов
/ 02 мая 2014

Я сталкивался с этой проблемой раньше и решил ее с помощью OnSeekCompleteListener:

mMediaPlayer.setOnSeekCompleteListener(new OnSeekCompleteListener() { public void onSeekComplete(MediaPlayer mp) { //Your stuff }});

Я не знаю, является ли это лучшим способом решения этой проблемы, но у меня это сработало.

Редактировать: Кстати, я использую оба прослушивателя, прослушиватель завершения и обнаружитель завершенности.Надеюсь, это поможет!

...