Я делаю музыкальное приложение Android с Kotlin и создаю пользовательский интерфейс с помощью JetPack Compose, используя Exoplayer в качестве игрока. В настоящее время я использую рукоятку для инъекции экзоплайера непосредственно в ViewModel, ответственный за управление игроком. < /P>
Код: Выделить всё
@HiltViewModel
class MusicViewModel @Inject constructor(
private val exoPlayer: ExoPlayer,
private val listenToSongUseCase: ListenToSongUseCase // To add song to history
) : ViewModel() {
private val _state = MutableStateFlow(MusicState())
val state: StateFlow = _state.asStateFlow()
init {
// Listener to make UI change according to the exoPlayer state
}
// Function to control exoPlayer: prev, next, play/pause, setQueue...
}
Теперь я хочу, чтобы это приложение продолжало воспроизводить музыку в фоновом режиме, также имея уведомление о управлении игроком (только Prev, Next, Play/Pause) и показывает данные текущего MediaItem (название, художник). Я следовал некоторым руководствам на YouTube и Docs Developer Android, но я не могу заставить его работать. Может кто -нибудь, пожалуйста, помочь мне создать медиа -сервис и настроить уведомление, как я хочу. Большое спасибо !!
Подробнее здесь:
https://stackoverflow.com/questions/796 ... tification