Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Listen for event when user opens app switcher on iOS

How can I listen for an event when a user opens the app switcher (the UI that comes up when a user double taps on the home button) on iOS.

I though UIApplicationDidEnterBackgroundNotification would fire, but it doesn't fire when I open the app switcher. It only fires when I minimize the app by tapping the home button once.

NSNotificationCenter.defaultCenter().addObserver(
  self,
  selector: "onPause",
  name: UIApplicationDidEnterBackgroundNotification,
  object:nil)

func onPause() {
  //Not invoked when app switcher is opened
}
like image 301
Steven Wexler Avatar asked Jun 27 '16 21:06

Steven Wexler


People also ask

What does app switcher do on iPhone?

Open the App Switcher to quickly switch from one open app to another on your iPhone. When you switch back, you can pick up right where you left off.

How do I know if an app is in the background or foreground iOS?

To detect if an iOS application is in background or foreground we can simply use the UIApplication just like we can use it to detect many other things like battery state, status etc. The shared. application state is an enum of type State, which consists of the following as per apple documentation.


1 Answers

You should receive a UIApplicationWillResignActiveNotification in that case. Your app is no longer the active app, but has not yet moved to the background.

If the user goes back to your app you'll get a UIApplicationDidBecomeActiveNotification when the app becomes active again. If the user does swap to another app, or select the springboard, then you should get a UIApplicationDidEnterBackgroundNotification.

like image 101
Duncan C Avatar answered Sep 19 '22 14:09

Duncan C