我有一个MediaPlayer服务。从活动我需要更改播放器的音量。有任何想法吗? 附:我非常需要你的帮助 P.P.S.对不起我的英文,请
答案 0 :(得分:1)
这可能对你有帮助..
protected static void setVolume(int volume) {
currentVolume = volume;
{
if (volume == 1) {
volume = 2;
}
try {
float vol = ((float) volume / CONSTANT.SYSTEM_MAX_VOLUME);
mediaPlayer.setVolume(vol, vol);
} catch (Exception e) {
e.printStackTrace();
}
}
}
另请参阅this
答案 1 :(得分:1)
如果它是本地Service
并且您没有强制它运行到另一个线程,您可以定义一个方法来设置MediaPlayer
的卷,绑定到Service
来自Activity
,并直接调用该方法。请参阅“本地服务示例”here,了解如何绑定到Service
。绑定到Service
后,您可以将收到的IBinder
转发给Service
类的实例以使用其方法。
如果它不是本地Service
,或者您已在单独的帖子中运行,则需要通过Service
/ {{1}与Messenger
进行通信或使用Handler
。在之前的同一链接中有一个“Remote Messenger Service Sample”。