DouBanRadio is an online streaming radio app adapting DouBanMusic API to provide quality online streaming music service.
Introduction [App Behaviour](#APP Behaviour)
DouBanRadio implement DouBanMusic API to provide quality straming music service. This is a prototype app. It can play streaming music from the service, get certains information about the music been playing, list out certains music channels and the music in those channels, playing music in background and so on.
The basic APP behaviour goes as follows:
- when app is launched the defaut channel are load with songs in it, Music play controller appears. On select any songs in music play table view, the song plays immediately. Album image of this song are load on the background image and on the Album image view. Album image view starts to rotate and time label starts to back play the duration of the song.
- On select channel list button, Channel list controller appears. Channels fetch from the API are listed in the table view. When select one channel, channel list controller will dismiss and music play controller will reappear with songs fetched from selected channel are display in the table view.
- Mode button is used to indicate the behaviour after one song is finished.
- Next and Previous button are used to change songs.
- streaming music
- browing channel list
- alboum image display
- background playing
- remote Control
- music play mode switch
- MVVM pattern
The main interface which include control buttons to control audio player behaviour, list button to segue to Channel controller, song table view for displaying songs in that channel, album image and time label for displaying details of that song.
Controller for channel list which displays channels given by API.Select one channel to go back to orginal controller with songs in table view.
Alamofire and SwiftyJSON are included in this project.