0

我正在创建一个 android 应用程序,我在其中播放手机中的音乐文件。我正在使用服务来实现这一点。所以我的服务有问题。当我启动服务时,我的应用程序中的音乐开始播放。当我按 Home 键并转到 YouTube 应用程序并播放任何视频时,该服务仍在后台运行,支付音乐文件。启动其他音乐文件时,如何停止我的服务播放音乐文件。提前致谢。

4

4 回答 4

0

当 Activity 或 Service 启动时,检查音乐是否正在播放。如果正在播放,请停止播放,否则返回 null,如下所示:

我认为您的onCreate方法中有以下几行Activity

MediaPlayer mp= MediaPlayer.create(this, R.raw.<Your Music File>);
mp.setLooping(true);

onPause在您的onStop方法中添加以下代码行Activity

if(mp.isPlaying())
    mp.stop();
else
    return;
于 2012-12-20T07:40:37.483 回答
0

像这样创建两个方法。用于音频播放。

private void playAudioFile() 
    {
        try
        {
             mp=new MediaPlayer();
             mp.reset();
             mp.setDataSource(audiofileName));
             mp.prepare();
             mp.start();
        }
        catch (Exception ex) 
        {
            ex.printStackTrace();

        }
    }

这适用于 killMedia 播放器。

private void killMediaPlayer() 
    {
        if(mp != null) 
        {
            try 
            {
                mp.release();
            }
            catch(Exception e) 
            {
                e.printStackTrace();
            }
        }
    }

用这个完成它对我有用。

and call like this 
killMediaPlayer();
playaudio();
于 2012-12-20T07:40:41.377 回答
0

在新活动开始时轮询正在运行的服务列表,如果需要使用扬声器,请暂停并让它完成?

于 2012-12-20T07:24:39.903 回答
0

在启动新服务之前,请停止正在运行的服务。
停止正在运行的服务时,请确保也停止播放器。

于 2012-12-20T07:24:45.787 回答