holder = surfaceView.getHolder();
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
holder.setKeepScreenOn(true);
holder.addCallback(new SurfaceListener());
mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
Intent intent = new Intent();
Bundle bundle = new Bundle();
bundle.putInt("sourceIndex", sourceIndex);
bundle.putStringArray("sourceList", filelist.sourceList);
System.out.println("filelist.sourceList="+filelist.sourceList);
intent.putExtras(bundle);
ComponentName cn = new ComponentName("com.android.loop","com.android.loop.PreviewActivityLoop");
intent.setComponent(cn);
startActivity(intent);
finish();
}
});
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
// mWakelock.acquire();// 点亮
super.onResume();
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
if(mPlayer.isPlaying()){
mPlayer.stop();
}
mPlayer.release();//释放mPlayer
mWakelock.release();//释放localWakeLock
super.onDestroy();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
if(isFirst && "service".equals(getIntent().getStringExtra("from"))){
isFirst = false;
}else{
finish();
}
super.onPause();
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
}
private void play(String dataSource){
try{
mPlayer.reset();
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mPlayer.setDataSource(dataSource);
mPlayer.setDisplay(holder);
mPlayer.prepare();
mPlayer.start();
Log.i(TAG, "start play ");
}catch(IOException e){
Log.e("Exception", e.toString());
}
}