public
class
MediaPlayerServeice
extends
Service
{
private
MediaPlayer mPlayer;
private
SongJson songJson;
private
ArrayList<SongJson> mPlayList =
new
ArrayList<SongJson>();
private
ArrayList<SongJson> mRadomPlayList =
new
ArrayList<SongJson>();
private
int
mPlayMode;
private
SongJson mPlayingSong;
private
int
mSongPosition;
public
MediaPlayerServeice()
{
}
@Override
public
void
onCreate()
{
super
.onCreate();
mPlayingSong =
new
SongJson();
mPlayer =
new
MediaPlayer();
mBinder =
new
PlayBinder();
mPlayer.setOnErrorListener(
new
OnErrorListener()
{
@Override
public
boolean
onError(MediaPlayer mp,
int
what,
int
extra)
{
mPlayer.reset();
return
false
;
}
});
mPlayer.setOnCompletionListener(
new
OnCompletionListener()
{
@Override
public
void
onCompletion(MediaPlayer mp)
{
playNext();
}
});
}
private
IBinder mBinder;
@Override
public
IBinder onBind(Intent intent)
{
return
mBinder;
}
private
void
seekTo(
int
msec)
{
mPlayer.seekTo(msec);
}
public
int
getCurrentPosition()
{
return
mPlayer.getCurrentPosition();
}
private
void
playNext()
{
}
private
void
stop()
{
mPlayer.stop();
}
private
int
setPlayMode(
int
mode)
{
return
mPlayMode = mode;
}
private
void
setPlayList(ArrayList<SongJson> list)
{
}
private
int
getCurrTime()
{
return
mPlayer.getCurrentPosition();
}
private
void
continuePlay()
{
mPlayer.start();
}
private
boolean
isplaying()
{
return
mPlayer.isPlaying();
}
private
void
pause()
{
mPlayer.pause();
}
private
void
play(
final
String url)
{
mPlayer.reset();
try
{
mPlayer.setDataSource(url);
mPlayer.setOnPreparedListener(
new
OnPreparedListener()
{
@Override
public
void
onPrepared(MediaPlayer mp)
{
mPlayer.start();
}
});
mPlayer.prepareAsync();
}
catch
(IllegalArgumentException e)
{
e.printStackTrace();
}
catch
(SecurityException e)
{
e.printStackTrace();
}
catch
(IllegalStateException e)
{
e.printStackTrace();
}
catch
(IOException e)
{
e.printStackTrace();
}
}
public
class
PlayBinder
extends
Binder
{
public
void
play(String url)
{
MediaPlayerServeice.
this
.play(url);
}
public
boolean
isplaying()
{
return
MediaPlayerServeice.
this
.isplaying();
}
public
void
pause()
{
MediaPlayerServeice.
this
.pause();
}
public
void
continuePlay()
{
MediaPlayerServeice.
this
.continuePlay();
}
public
int
getCurrTime()
{
return
MediaPlayerServeice.
this
.getCurrTime();
}
public
void
setPlayList(ArrayList<SongJson> list)
{
MediaPlayerServeice.
this
.setPlayList(list);
}
public
int
setPlayMode(
int
mode)
{
return
MediaPlayerServeice.
this
.setPlayMode(mode);
}
public
void
playNext()
{
MediaPlayerServeice.
this
.playNext();
}
public
void
stop()
{
MediaPlayerServeice.
this
.stop();
}
public
int
getCurrentPosition()
{
return
MediaPlayerServeice.
this
.getCurrentPosition();
}
}
}