VideoView播放视频会引起其它音乐播放器暂停问题解决

问题:假如使用videoview播放视频时,后台有正在播放的音乐,发现音乐播放器会暂停播放。

mediaController = new MediaController(this.getActivity());
mediaController.setVisibility(View.GONE);        //隐藏进度条
videoView.setMediaController(mediaController);
 rawUri = Uri.parse("android.resource://" + mMainActivity.getPackageName() + "/" + raw);

  //利用   MediaMetadataRetriever 解决缓冲黑屏问题
  MediaMetadataRetriever media = new MediaMetadataRetriever();
  Log.d("videopath",rawUri.getPath());
  media.setDataSource(this.getActivity(),rawUri);
  //获取视频中的第一帧照片,设置为封面
  Bitmap bitmap  = media.getFrameAtTime(1, MediaMetadataRetriever.OPTION_CLOSEST_SYNC );
  Drawable drawable = new BitmapDrawable(getResources(),bitmap);
  videoView.setBackground(drawable);
  media.release();

  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
      videoView.setAudioFocusRequest(AudioManager.AUDIOFOCUS_NONE);
  }

  videoView.setVideoURI(rawUri);
//  videoView.setFocusable(false);
  videoView.start();

  videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
      @Override
      public void onPrepared(MediaPlayer mediaPlayer) {
          mediaPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
              @Override
              public boolean onInfo(MediaPlayer mediaPlayer, int i, int i1) {
                  if (i == MediaPlayer.MEDIA_INFO_VIDEO_RENDERING_START) {
                      videoView.setBackgroundColor(Color.TRANSPARENT);
                  }
                  return true;
              }
          });
      }
  });

解决方案:

添加标注红色代码

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { videoView.setAudioFocusRequest(AudioManager.AUDIOFOCUS_NONE); }

设置音频焦点为:AudioManager.AUDIOFOCUS_NONE;

即可解决问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值