如何静音或取消静音它的的onPause和onResume [英] How to mute and unmute it on the onPause and onResume

查看:380
本文介绍了如何静音或取消静音它的的onPause和onResume的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个问题,当我设置音频静音上的的onPause() onResume()我尝试取消静音,但没有成功。

code:

 保护无效的onPause(){
            super.onPause();
            Log.d(TAG的onPause);
            setStreamMute(真正的);
         }

    保护无效onResume(){
            super.onResume();
            Log.d(TAG,onResume);
            setStreamMute(假);
        }

    公共无效setStreamMute(布尔州){
            Log.d(TAG,SetMute:+状态);
            myAudioManager =(AudioManager)getSystemService(Context.AUDIO_SERVICE);
            myAudioManager.setStreamMute(AudioManager.STREAM_MUSIC,状态);
      }
 

任何帮助是值得欢迎的,谢谢。

解决方案

  MediaPlayer的ourSong;
INT长; //要保存在那里的音乐已经暂停了最后一秒钟
 

在您的的OnCreate

  ourSong = MediaPlayer.create(yourActivity.this,YourSong);
        ourSong.setLooping(真正的);
ourSong.start();
 

在您暂停功能

  ourSong.pause();
长度= ourSong.getCurrentPosition();
 

在您恢复功能

  ourSong.seekTo(长度);
ourSong.start();
 

注:

你应该做一个文件夹然后 YourSong 必须是这样的研究.raw.yoursong

I'm having a problem when I set the audio to Mute on the onPause() and in the onResume() I try to unmute it but without success.

Code:

    protected void onPause() {
            super.onPause();
            Log.d(TAG, "onPause");
            setStreamMute(true);        
         }

    protected void onResume() {
            super.onResume();
            Log.d(TAG, "onResume");
            setStreamMute(false);
        }

    public void setStreamMute (boolean state){
            Log.d(TAG,"SetMute: "+state);
            myAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
            myAudioManager.setStreamMute(AudioManager.STREAM_MUSIC, state);
      }

Any help is welcome, thanks.

解决方案

MediaPlayer ourSong;
int length; // To save the last seconds where the music has paused

In your OnCreate

ourSong = MediaPlayer.create(yourActivity.this, YourSong);
        ourSong.setLooping(true);
ourSong.start();

In you pause function

ourSong.pause();
length = ourSong.getCurrentPosition();

In you resume function

ourSong.seekTo(length);
ourSong.start();

Note:

you should make a folder row and then YourSong has to be like this R.raw.yoursong

这篇关于如何静音或取消静音它的的onPause和onResume的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆