Default and ephemeral sessions - Allowed when app state is active - Disallowed when app state is inactive or background Except when in a background navigation mode
Background sessions - Smaller transfers are better - Transfers may be deferred until later - Response will wake your app in frontmost app state
Best Practices
Use waitsForConnectivity instead of SCNetworkReachbility
applicationWillResignActive()
Use the shared URLSession for multiple tasks
Watch Connectivity
Use for initial setup
Background transfers
Update application context for newer data
Barometric Altimeter
CMAltimeter
Determines device availability
Surfaces authorization status
Starts and stops altitude updates
CMAltitudeData
Timestamp - Number of seconds since reference date
Relative altitude - Change in altitude since last reported event ( in meters )