In iOS, when an app is closed (you hit the home button) the app has 5 seconds to save what you were doing before it’s kicked out of accessing anything. This is called sandboxing and is absolutely fundamental to how the iOS system works, and how iOS offers security to users
Because this is so fundamental to how the OS works, it wouldn’t be possible to make this work without rewriting from the ground up the whole operating system, changing vast amounts of the very core iOS is built upon.
Your app delegate’s applicationDidEnterBackground: method has approximately 5 seconds to finish any tasks and return. In practice, this method should return as quickly as possible. If the method does not return before time runs out, your app is killed and purged from memory.
https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/StrategiesforHandlingAppStateTransitions/StrategiesforHandlingAppStateTransitions.html
Of course, your app can run in the background state – for example Google Maps. But these have to be approved by Apple as part of their rigorous approval process, and it has to have tangible benefit to the user. If Facebook somehow got Apple to let them listen to users with the app in a background state that means someone at a high level at Apple approved that. Everyone enjoys bashing on big business but I don’t think Apple would approve spying on their users.