Android:媒体播放器在后台自动启动
这是我上一个问题的继续。在我的应用程序中,我正在使用该服务在后台播放媒体播放器。它在我检查过的所有来电和呼出的情况下都能正常工作。服务在完成时也会被破坏。当用户明确暂停歌曲时,媒体播放器会暂停,但一段时间后,它会自行启动。从日志中,我得到了发生这种情况时检测到的呼叫状态idle。我想避免这种情况。我在下面发布我的代码: 音乐服务 启动服务的按钮代码:Android:媒体播放器在后台自动启动,android,service,android-mediaplayer,Android,Service,Android Mediaplayer,这是我上一个问题的继续。在我的应用程序中,我正在使用该服务在后台播放媒体播放器。它在我检查过的所有来电和呼出的情况下都能正常工作。服务在完成时也会被破坏。当用户明确暂停歌曲时,媒体播放器会暂停,但一段时间后,它会自行启动。从日志中,我得到了发生这种情况时检测到的呼叫状态idle。我想避免这种情况。我在下面发布我的代码: 音乐服务 启动服务的按钮代码: btn_Play.setOnClickListener(new View.OnClickListener() { pub
btn_Play.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
if(ChalisaService.playerFlag == 0)
{
startService(in);
ChalisaService.playerFlag = 1;
Log.v("HanuAlarm play button if", "in if loop");
txtPlay.setText("Pause");
txtPlay.setTextColor(getResources().getColor(R.color.redwine));
btn_Play.setBackgroundResource(R.drawable.btnpause);
}//if
else if(ChalisaService.playerFlag == 1)
{
ChalisaService.mediaPlayer.pause();
ChalisaService.playerFlag = 0;
Log.v("HanuAlarm play button else", "in else loop");
txtPlay.setText("Play");
txtPlay.setTextColor(getResources().getColor(R.color.white));
btn_Play.setBackgroundResource(R.drawable.btnplay_a);
}//else if
}//onClick
});
您正在使用START_STICKY作为您的服务!这就是它自动重新启动的原因。尝试使用START_Nonsicky。PS:希望有这个“HANUMAN CHALISA”应用程序!你是说开始不粘
btn_Play.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
if(ChalisaService.playerFlag == 0)
{
startService(in);
ChalisaService.playerFlag = 1;
Log.v("HanuAlarm play button if", "in if loop");
txtPlay.setText("Pause");
txtPlay.setTextColor(getResources().getColor(R.color.redwine));
btn_Play.setBackgroundResource(R.drawable.btnpause);
}//if
else if(ChalisaService.playerFlag == 1)
{
ChalisaService.mediaPlayer.pause();
ChalisaService.playerFlag = 0;
Log.v("HanuAlarm play button else", "in else loop");
txtPlay.setText("Play");
txtPlay.setTextColor(getResources().getColor(R.color.white));
btn_Play.setBackgroundResource(R.drawable.btnplay_a);
}//else if
}//onClick
});