Song states
A song can be in four different states in terms of its availability to play.
- Ready to play download_2
- Not ready to play downloading
- Downloaded download_done
- Cannot be played device_unknown
The third icon on top of a song's cover image shows its state.
When the app is first installed, or when you click on refresh to fetch new joins, each song is in 'Ready to play' download_2 state or 'Not ready to play' downloading state.
The state of the song decides whether it is playable.
When you play a song that is 'Ready to play'
Assuming your device is online, most of the times, the song would play. If it is played for 10 seconds, it would be marked as having been 'played'. You can search for such songs with state: played
If the song is downloaded based on your download options, its state would change to 'Downloaded'. You will see the third icon on the cover image change to download_done. You can see it under the Songs tab - downloaded option. You can also find it from the search box using state: downloaded.
Rarely, the song would not play. If you are playing a list of songs, the list would move to the next song. The third icon under the song image would change from 'Ready to play' download_2 to 'Not ready to play' downloading.
When you play a song that is 'Not ready to play'
You will see a message that asks you try again in a minute.
Behind the scenes, the app mimics you trying to play it from the Smule website. It clicks on the play button on the song and checks every 30 seconds, whether it is available.
When the song is available in Smule, the third icon on the cover image would change to 'Ready to play' download_2.
If the song is not available from Smule after several minutes, the app gives up. You can find such songs with state: error. If you tap on them again, the app would repeat this process.
Permanent errors
Songs are sometimes deleted in Smule. You might delete them yourself or Smule might delete them due to a copyright violation.
This app would detect that a song has been deleted only when you try to play that song. It would change the song's status to 'Cannot be played' device_unknown. You can search for such songs under status: deleted.