UIApplication.applicationDidBecomeActive(_:) and UIApplication.applicationWillResignActive(_:) are not called system-wide

Originator:v.i.p.dimak
Number:rdar://FB7647760 Date Originated:Apr 1, 2020 at 5:22 PM
Status:Open Resolved:No
Product:UIKit Product Version:iOS 13
Classification:Security Reproducible:100%
 
Configuration: iPhone Xs Max, iOS 13.4
Reproducibility: 100%

After using notification centre all applications stop receiving such lifecycle events as UIApplication.applicationDidBecomeActive(_:) and UIApplication.applicationWillResignActive(_:).

Steps:
1 Launch any app with push notifications
2 while application is in foreground state receive a new push notification and expand it by swipe gesture
3 tap «More»
4 tap on «Settings»
5 navigate back to the application

Expected:
applicationDidBecomeActive would be called

Actual:
The only applicationWillEnterForeground is called

Notes:
Killing an app and opening again changes nothing. System-wide these lifecycle methods are not delivered to any application anymore.
Only applicationWillEnterForeground and applicationDidEnterBackground work.

To fix this required either to restart the device or to receive new push a tap «view»
After that, all lifecycle methods are fixed and delivered.

These lifecycle events are crucial to add/remove blur on switching between apps and protect users from exposing their private info

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!