ご連絡頂きありがとうございます。
やはり自分でチェックでしょうか。確かに。。
現在、定期的にプログレスバーで進捗率を出しているため
そこでチェックして、次回の更新がgetDurationを超える場合は
pauseで止め、seekToでgetDurationの値を設定しています。
(再度0から再生が可能なように、終わったようにする)
まだ検証段階なレベルだからだと思いますが・・
このようにすると、
・直後、再生ボタン押下で再び再生した場合にタイミングによって再生してくれないときがある
(この場合2回押下すると動く)
・タイミングがずれるとストップかける前にループするのではないか
というような動きになるのではないかと考えてます。。
また、再度スタートから再生するためpause・seekToでごまかしてますが、
MediaPlayerのライフサイクルに反しているため
oggのようなファイルのLoopをfalseに設定させることができない場合は
現在、以下の2点を検討しております。
・pause・seekToで無理に持っていくのではなく、
ライフサイクルPlaybackCompletedに進められる方法はないか
・ヘッダ情報を取得し、ANDROID_LOOP=trueのコンテンツだと判断できないか
→その場合のみ上記の方法で強制的に止め、通常のコンテンツはonComplesionを待つようにしたい
ANDROID_LOOP=trueのコンテンツのほうが少ないと思いますのでリスクを減らしたい。
プログレスバーで進捗を表示するため、手でも変更が可能です。
そのため、よりリスクが少ない形で進めればと思っております。
ループしちゃうのは諦める、とも思いますが、、
まずは、止める方向で何かアドバイス頂けると助かります。
みなさまよろしくお願いします。
2012年8月8日水曜日 2時03分10秒 UTC+9 MORIHIRO: