0

我有一个带有 MediaPlayer 的服务。从活动我需要改变播放器的音量。有任何想法吗?PS 我非常需要你的帮助 PPS 对不起我的英语,拜托

4

2 回答 2

1

如果它是本地的Service并且您没有强制它运行到另一个线程,您可以定义一个方法来设置MediaPlayer的音量,绑定到Servicefrom Activity,然后直接调用该方法。请参阅此处的“本地服务示例”以了解如何绑定到Service. 绑定到 后Service,您可以将IBinder收到的 转换为Service类的实例以使用其方法。

如果它不是本地的Service,或者如果你让它在单独的线程中运行,你将需要Service通过Messenger/Handler或使用Intent. 之前的同一链接中有一个“远程信使服务示例”。

于 2013-10-20T10:32:11.433 回答
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();
            }
        }

    }

也参考这个

于 2013-10-19T07:17:32.800 回答