当我的介绍视频播放时,Android Google音乐应用会停止

时间:2012-01-24 22:25:18

标签: android audio android-videoview

我在Android应用中使用VideoView来显示介绍动画。

如果Google音乐应用在后台播放音乐,请调用videoview.start()停止在后台播放Google音乐应用中的音乐。

有没有办法确保后台的任何音乐会与我的介绍视频同时播放? (它没有音频)

谢谢!

3 个答案:

答案 0 :(得分:4)

原创Google音乐应用程序,其他一些应用程序会在任何视频开始播放时停止播放音乐。

为了确保我没有打断用户的聆听体验,我现在跳过介绍视频,如果我确定后台有音乐播放。

要做到这一点:

AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

if (am.isMusicActive()) {
    loadApp();   // skip video and go straight to the app
}
else {
    videoView.start();  // play video
}

答案 1 :(得分:1)

使用之前给出的答案,这是一个解决方案,将在您的视频结束后恢复音乐:

final boolean music_was_playing = ((AudioManager) getSystemService(Context.AUDIO_SERVICE)).isMusicActive();

VideoView vv_Video = (VideoView) findViewById(R.id.intro_video_view);

// play the intro video
vv_Video.setOnCompletionListener( new OnCompletionListener() {
    @Override
    public void onCompletion(MediaPlayer m) {
        // resume music if it was playing cause our intro video just paused it temporarily
        if (music_was_playing) {
            Intent i = new Intent("com.android.music.musicservicecommand");
            i.putExtra("command", "play");
            sendBroadcast(i);
        }

        // go to main menu
        startActivity(new Intent(IntroActivity.this, MainMenuActivity.class));
    }
});

答案 2 :(得分:-2)

取自VideoView.java

中的openVideo()
 Intent i = new Intent("com.android.music.musicservicecommand");
 i.putExtra("command", "pause");
 mContext.sendBroadcast(i);