我正在開發一個應用程序,該應用程序應該可以捕獲音頻(FM/Music)的開始和結束時間。我衝浪了很多,並知道這可以通過audioFocusListener來實現。我已經實現了監聽器,但我沒有正確地獲取值。即當音頻獲得焦點並失去焦點時,這並沒有給予適當的價值。 OnAudioFocusChangeListener is not executed when the audio is played and paused?
有沒有其他的方法來實現相同的?如何在android中查找音樂應用程序的開始和結束時間?
public class AudioManagerExample extends Activity implements OnAudioFocusChangeListener{
AudioReceiver adreceiver;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
AudioManager am = (AudioManager) getSystemService(AUDIO_SERVICE);
am.requestAudioFocus(this,AudioManager.STREAM_MUSIC,AudioManager.AUDIOFOCUS_GAIN)
}
@Override
public void onAudioFocusChange(int focusChange) {
Log.d("AudioManager", "Inside on audio focus change");
if(focusChange == AudioManager.AUDIOFOCUS_GAIN)
Log.d("AudioManager", "audio focus gained");
if(focusChange == AudioManager.AUDIOFOCUS_LOSS)
Log.d("AudioManager", "audio focus lossed");
/* Here i am always getting value -1 */
}
}
在此先感謝
你可以得到可以通過getduration()方法來實現音頻的結束時間。 – AkashG 2012-07-09 11:00:11
@Aashash:謝謝,但事情是我需要調用mediaPlayer.getDuration()方法在一定的時間間隔。但是我無法獲得音樂停止播放的時間? – pushpa 2012-07-09 11:07:06
嗨,你可以發佈你的OnAudioFocusChangeListener代碼來捕獲音頻的開始和結束時間。 – 2012-07-09 11:10:36