我正在为Android制作一个简单的音乐应用程序。 它工作正常,但是当我想改变多媒体音量时,我无法直接从应用程序中获取它。 如果我点击音量增大/减小按钮它会改变电话通话音量,所以我应该去其他应用程序(游戏),当再次点击这些按钮时,它会改变多媒体音量。Android中的多媒体音量而不是电话音量
你知道任何方式来选择这些音量按钮只适用于我的应用程序中的多媒体音量,而不是整个手机吗?
非常感谢您
我正在为Android制作一个简单的音乐应用程序。 它工作正常,但是当我想改变多媒体音量时,我无法直接从应用程序中获取它。 如果我点击音量增大/减小按钮它会改变电话通话音量,所以我应该去其他应用程序(游戏),当再次点击这些按钮时,它会改变多媒体音量。Android中的多媒体音量而不是电话音量
你知道任何方式来选择这些音量按钮只适用于我的应用程序中的多媒体音量,而不是整个手机吗?
非常感谢您
我不知道是否有这个默认的方法,但你总是可以做到这一点:
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if ( keyCode == KeyEvent.KEYCODE_VOLUME_DOWN ||
keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
//magic goes here
} else {
return super.onKeyDown(keyCode, event);
}
}
内置的您正在寻找的是一流的AudioManager
。我相信你需要的特定方法是setStreamVolume
。流类型将是AudioManager.STREAM_MUSIC
你可以阅读它[这里] [1]。
编辑:我想我不能让这个超链接....所以here是链接到顶级类...奇怪。
[1]:http://developer.android.com/reference/android/media/AudioManager.html#setStreamVolume(int,INT,INT)
什么是真正的easiset是这个
http://developer.android.com/reference/android/app/Activity.html#setVolumeControlStream%28int%29
只是从你的活动的onCreate调用setVolumeControlStream并通过STREAM_MUSIC或任何你正在运行的audio on
在我测试过的大多数手机上,它们的音量值没有正确更新,直到onKeyUp ...你应该处理该方法 – yano 2013-03-01 01:28:07