RW apps need to behave like typical iOS audio apps, so we need to ensure that:
the app can be backgrounded and the audio will continue to stream
the user's location will continue to be updated so that the stream stays current even when backgrounded
if phone call or other core feature interrupt happens, the audio fades out and the app sends a streams/:id/pause/ call to keep stream from updating while not in use
post-interrupt, streams/:id/resume/ needs to be sent along with possibly other actions to interact properly with the default iOS behavior
I do not want us to do anything unexpected or weird wrt to user interactions and expectations, so using the default iOS behavior as much as possible will be great, but RW does have a few unique bits that need to be handled.
RW apps need to behave like typical iOS audio apps, so we need to ensure that:
streams/:id/pause/
call to keep stream from updating while not in usestreams/:id/resume/
needs to be sent along with possibly other actions to interact properly with the default iOS behaviorI do not want us to do anything unexpected or weird wrt to user interactions and expectations, so using the default iOS behavior as much as possible will be great, but RW does have a few unique bits that need to be handled.