Java 如何获取Android设备当前的媒体类型?
我在我的服务中使用AudioManager来控制媒体音量,但我只能控制媒体类型,我在Java 如何获取Android设备当前的媒体类型?,java,android,android-audiomanager,Java,Android,Android Audiomanager,我在我的服务中使用AudioManager来控制媒体音量,但我只能控制媒体类型,我在setStreamVolume()中写入媒体类型。我尝试使用getRingerMode()获取媒体类型,但内容是我的服务的 int currentType = audioManager.getRingerMode(); int currentVoice = audioManager.getStreamVolume(currentType); audioManager.setStreamVolume(curren
setStreamVolume()
中写入媒体类型。我尝试使用getRingerMode()
获取媒体类型,但内容是我的服务的
int currentType = audioManager.getRingerMode();
int currentVoice = audioManager.getStreamVolume(currentType);
audioManager.setStreamVolume(currentType, currentVoice, AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);
如何控制其他应用程序卷?参考:
谢谢杜威·里德和阿什文·索兰基。 我从阿什文·索兰基那里得到了灵感,杜威·里德帮助我阅读Android源代码。 要获取当前媒体类型,可以使用
adjustVolume()
并将方向
值设置为AudioManager.adjustment\u SAME
。
例如:
audioManager.adjustVolume(audioManager.ADJUST_SAME,audioManager.FLAG_PLAY_SOUND | audioManager.FLAG_SHOW_UI)代码>
现在显示AudioControl窗口,并具有当前媒体类型
AudioManager audioManager = (AudioManager) getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
Button upButton = (Button) findViewById(R.id.upButton);
upButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//To increase media player volume
audioManager.adjustVolume(AudioManager.ADJUST_RAISE, AudioManager.FLAG_PLAY_SOUND);
}
});
Button downButton = (Button) findViewById(R.id.downButton);
downButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//To decrease media player volume
audioManager.adjustVolume(AudioManager.ADJUST_LOWER, AudioManager.FLAG_PLAY_SOUND);
}
});