我正在寻找一个自定义的音量监视器

时间:2012-07-05 15:43:37

标签: android

我正在寻找一个简单的卷管理器应用程序。我知道它以前已经完成了,但我只想找一个看看它是什么样的,并且更熟悉代码并用它做某些事情。

我希望它可以包含一个if语句,如果音量低于零,它会发出一个“Toast”通知,上面写着“你已经降到零以下”的内容。

听起来我要求有人为我这样做,我只是想要一个基本的想法/框架来处理。

- 谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

我认为您需要的信息不仅仅是如何制作吐司。所以这里有很少的其他指示。

要访问音量级别,请使用AudioManager

AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int currentVolume = audio.getStreamVolume(AudioManager.STREAM_MUSIC);

捕捉音量按钮非常简单:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    super.onKeyUp(keyCode, event);
    if ((keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)) {
        // Do something if currentVolume is low enough
        // return true;
    }
    // Check if Up is pushed too
    return false;
}

Toast也很容易:

Toast.makeText(context, "Message", Toast.LENGTH_LONG).show();

如果您希望自己的应用/服务能够使用当前音量进行更多操作,您可能会发现这并不像听起来那么直接......

此方法告诉系统在您的应用处于活动状态时,使用音量按钮调整哪个音频流:

setVolumeControlStream(AudioManager.STREAM_MUSIC);

阅读documentation,了解自己如何无法预测音量。以下是关于同一主题的问题:How can I manage audio volumes sanely in my Android app?