mediaplayer の looping プロパティを false に設定しても、一度も着信音を再生できません。このプロパティは、URI
使用されている着信音によってオーバーライドされたようです。だからonCompletion
解雇されることはありません。
不思議なことに、URI
が通知音に対応する場合、ループは に従って動作しsetLooping
ます。ここではうまく機能します。
それで、着信音を一度再生する方法はありますか?
mediaplayer の looping プロパティを false に設定しても、一度も着信音を再生できません。このプロパティは、URI
使用されている着信音によってオーバーライドされたようです。だからonCompletion
解雇されることはありません。
不思議なことに、URI
が通知音に対応する場合、ループは に従って動作しsetLooping
ます。ここではうまく機能します。
それで、着信音を一度再生する方法はありますか?
以前にこの問題に直面し、OnSeekCompleteListener を使用して解決しました。
mMediaPlayer.setOnSeekCompleteListener(new OnSeekCompleteListener() {
public void onSeekComplete(MediaPlayer mp) {
//Your stuff
}});
これがこれを解決する最善の方法かどうかはわかりませんが、私にとってはうまくいきました。
編集:ところで、私はoncompletionlistenerとonseekcompletelistenerの両方のリスナーを使用しています。お役に立てれば!