In iOS 7 my app presented an authentication screen when the app went into the background (by subscribing to UIApplicationDidEnterBackgroundNotification
). The authentication controller removed sensitive information so the background screenshot did not show any user info. In iOS 8 this does not work anymore. The background screenshot now shows the view the user was last working in and not the authentication controller... even though when the app comes back into the foreground the authentication controller is active.
I found a work around for now. Instead of using UIApplicationDidEnterBackgroundNotification
I can use name:UIApplicationWillResignActiveNotification
however this causes a flash as the user leaves the app.
Is this a bug or did apple provide a new way to remove sensitive information from views before moving to the background.
Note: putting ignoreSnapshotOnNextApplicationLaunch
in applicationWillResignActive:
and applicationDidEnterBackground:
did not help.
Update: created a bug report