package com.talent.allshare.player; import org.cybergarage.util.CommonLog; import org.cybergarage.util.LogFactory; import com.talent.allshare.network.Item; import com.talent.allshare.network.ItemFactory; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; class PlayBrocastReceiver extends BroadcastReceiver { private static final CommonLog log = LogFactory.createLog(); private PlayerEngineListener mPlayerEngineListener; @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub String action = intent.getAction(); if (action.equals(PlayBorcastFactory.BROCAST_NAME)) { TransPlayStateEvent(intent); } } public void setPlayEngineListener(PlayerEngineListener listener) { mPlayerEngineListener = listener; } public void TransPlayStateEvent(Intent intent) { if (mPlayerEngineListener == null){ return ; } int playState = intent.getIntExtra(PlayBorcastFactory.PLAY_MUSIC_STATE, -2); int playIndex = intent.getIntExtra(PlayBorcastFactory.PLAY_MUSIC_INDEX, -1); int playCurPos = intent.getIntExtra(PlayBorcastFactory.PLAY_MUSIC_CURPOS, -1); Item item = ItemFactory.getItemFromIntent(intent); if (playState == -2){ if (playCurPos != -1){ mPlayerEngineListener.onCurPosition(playCurPos); } return ; } log.e("playState = " + playState + ", TransPlayStateEvent --> data = \n" + item.getShowString()); switch (playState) { case PlayState.MPS_INVALID: mPlayerEngineListener.onTrackStreamError(item); break; case PlayState.MPS_PREPARE: mPlayerEngineListener.onTrackStop(item); break; case PlayState.MPS_PLAYING: mPlayerEngineListener.onTrackPlay(item); break; case PlayState.MPS_PAUSE: mPlayerEngineListener.onTrackPause(item); break; default: break; } } }