zoukankan      html  css  js  c++  java
  • 在Activity不可见时暂停WebView的语音播放,可见时继续播放之前的语音

    private AudioManager mAudioManager;
    private AudioManager.OnAudioFocusChangeListener mFocusChangeListener;

    @Override
    protected void onPause() {
      super.onPause();
      stopPlayVoice();
    }

    @Override
    protected void onResume() {
      super.onResume();
      startPlayVoice();
    }

    public void stopPlayVoice() {
      if (mAudioManager == null) {
        mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
        mFocusChangeListener = new AudioManager.OnAudioFocusChangeListener() {
          @Override
          public void onAudioFocusChange(int focusChange) {
          }
        };
      }
      for (int i = 0; i < 10; i++) {  //尝试10次请求AudioFocus,一般一两次可以请求到,一旦请求到,语音将暂停播放
        if (mAudioManager.requestAudioFocus(mFocusChangeListener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT) == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
          break;
        }
        SystemClock.sleep(100);
      }
    }

    private void startPlayVoice() {
      if (mAudioManager != null) {
        mAudioManager.abandonAudioFocus(mFocusChangeListener);//放弃并还回拿到的AudioFocus,语音将继续播放
      }
    }

  • 相关阅读:
    POJ3122贪心或者二分(分蛋糕)
    POJ2118基础矩阵快速幂
    POJ2118基础矩阵快速幂
    POJ1328贪心放雷达
    POJ1328贪心放雷达
    hdu4642博弈(矩阵)
    hdu4642博弈(矩阵)
    POJ1042 贪心钓鱼
    POJ3160强连通+spfa最长路(不错)
    POJ3114强连通+spfa
  • 原文地址:https://www.cnblogs.com/yongfengnice/p/8399406.html
Copyright © 2011-2022 走看看