我是android的新手,正在做一个项目,在这个项目中我必须在我们的应用程序中实现背景音乐。我已经使用服务实现了背景音乐,问题是:我不知道如何使用活动中的seekbar动态更改音乐的音量。
我的服务是这样的:
package hu.szoftverprojekt.holdemfree.controller;
import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
import androidx.annotation.Nullable;
import hu.szoftverprojekt.holdemfree.R;
public class PlaySound extends Service {
MediaPlayer player;
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
player=MediaPlayer.create(this, R.raw.ss);
player.setLooping(true);
player.start();
player.setVolume(SettingsScreen.volume, SettingsScreen.volume);
return START_STICKY;
}
@Override
public void onDestroy() {
super.onDestroy();
player.stop();
}
}
1条答案
按热度按时间bfnvny8b1#
一旦你有了
SeekBar
以及OnSeekBarChangeListener
在你换衣服的时候被叫来SeekBar
,下一个主要的事情是将这一点从您的活动传达到您的服务。看一看android文档,它创建了一个绑定服务,用于在
Activity
以及Service
不使用第三方库。然而
您还可以使用像eventbus这样的第三方库(我建议使用eventbus,因为我认为它更易于使用和实现)。
下面是一个使用
EventBus
:内部版本.gradle:
mediavolumeevent.java文件:
播放声音.java:
在你的活动中
OnSeekBarChangeListener
: