I don't think we should. What is happening here is we are passing an onCompleation listener to single file audio player so that we can be informed when the song is over. When the song is over the playlist service moves to the next song and broadcasts that the playlist is updated. The playlist fragment listens to playlist updated. 

In addition to playlist service the playbar fragment listens to song finished and changes the pause play button.

Basically I think it makes sense for single file audio player to say the song is finished and the playlist service to say the playlist has changed.