Я делаю использование приложения MediaPlayer для потоковой mp3 из драйвера Google: (Ex: https://drive.google.com/uc?export=download&id=0B50eyu1h_Rc1bENYOU1iSjFWaVk)MediaPlayer длительность возврата 0, когда поток mp3
на обновление времени Funtion:
private Runnable mUpdateTimeTask = new Runnable() {
public void run() {
long totalDuration = mp.getDuration();
long currentDuration = mp.getCurrentPosition();
// Displaying time completed playing
songCurrentDurationLabel.setText(""+utils.milliSecondsToTimer(totalDuration - currentDuration));
// Updating progress bar
int progress = (int)(utils.getProgressPercentage(currentDuration, totalDuration));
//Log.d("Progress", ""+progress);
songProgressBar.setProgress(progress);
// Running this thread after 100 milliseconds
mHandler.postDelayed(this, 100);
}
};
Я вижу, что долго totalDuration = mp.getDuration()
всегда return 0, несмотря на то, что медиаплеер играл.
Как я могу получить длину носителя?
getCurrentPosition() возвращает правильные значения? –
Да, он имеет значение – phongvan