Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 静音和取消静音按钮?(仍需回答)_Java_Android_Audio_Service_Nullpointerexception - Fatal编程技术网

Java 静音和取消静音按钮?(仍需回答)

Java 静音和取消静音按钮?(仍需回答),java,android,audio,service,nullpointerexception,Java,Android,Audio,Service,Nullpointerexception,我已经被困在这个问题上一个多小时了。在我的主菜单屏幕中,我有一个静音按钮。我希望它在我的后台服务中调用一个方法,该方法将所有的MediaPlayer音频静音 这里我叫哑巴: public void mute(View view){ mutebutton = (ImageButton) findViewById(R.id.mutebutton); currentVolume = manager.getStreamVolume(AudioManager.STREAM_MUS

我已经被困在这个问题上一个多小时了。在我的主菜单屏幕中,我有一个静音按钮。我希望它在我的后台服务中调用一个方法,该方法将所有的
MediaPlayer
音频静音

这里我叫哑巴:

    public void mute(View view){
    mutebutton = (ImageButton) findViewById(R.id.mutebutton);

    currentVolume = manager.getStreamVolume(AudioManager.STREAM_MUSIC);

    if (currentVolume == 0) {
        TwentySeconds.unMute();
        Toast.makeText(Main_Menu.this, "UNMUTED", Toast.LENGTH_SHORT).show();
    } else {
        TwentySeconds.mute();
        Toast.makeText(Main_Menu.this, "MUTED", Toast.LENGTH_SHORT).show();
    }
以下是服务中的方法:

public static void mute(){
    ten.setVolume(0, 0);
    three.setVolume(0, 0);
}

public static void unMute(){
    ten.setVolume(1, 1);
    three.setVolume(1, 1);
}
以下是实际的媒体播放器,它们每隔一段时间播放:

 static `MediaPlayer` ten;
static `MediaPlayer` three;
问题是,我在这里得到一个空指针异常:

currentVolume = manager.getStreamVolume(AudioManager.STREAM_MUSIC);
顺便说一下,manager的实例化如下:

 AudioManager manager;
后来:

manager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
我将非常感谢任何反馈(正面或负面)!非常感谢您的帮助,如果您需要更多代码,请告诉我

 {Rich}
您的“经理”应该像这样实例化:

AudioManager manager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
如果这仍然是一个空点,请添加

Context context = this;

在实例化之前。试试看,希望我能帮你。

谢谢你的回答!但是我仍然得到了nullpointer异常…?啊…很抱歉,我没有看到你最后写了“manager=(AudioManager)getSystemService(Context.AUDIO_SERVICE);”。很抱歉没关系,我还是很感激你的回答。你知道问题出在哪里吗?因为我的实例化实际上在倒计时计时器中,所以我得到了以下结果:不兼容的类型:必需的:android.content.Context找到的:android.os.countdownttimer是否可能在
manager
可以初始化之前调用了
mute()
?也许你可以告诉我们整个课程(只有相关的部分可以做)也会有帮助。