-
[iOS] applicationWillResignActive(_:)가 호출되지 않을 때(푸시 알림)프로그래밍/iOS 2020. 10. 11. 23:58
문제 상황:
UserNotification 프레임워크를 이용해서 로컬 푸시알림을 구현 중,
백그라운드에 들어갈 때 호출되는 메소드 applicationWillResignActive(_:)이 호출되지 않아, 푸시알림이 오지 않는 것 처럼 보이는 일이 발생함.
발생 원인:
iOS 13 이후 변경된 생명주기 이벤트 전달 방식 때문임.
백그라운드에 들어갔을 때 호출되는 메소드는
AppDelegate.swift의 applicationWillResignActive(_:)가 아닌,
SceneDelegate.swift의 sceneWillResignActive(_:)임.
해결 방법:
SceneDelegate의 sceneWillResignActive(_:)에서 처리해주면 됨
참고:
developer.apple.com/documentation/uikit/uiapplicationdelegate/1622950-applicationwillresignactive
stackoverflow.com/questions/56508764/app-delegate-methods-arent-being-called-in-ios-13
반응형'프로그래밍 > iOS' 카테고리의 다른 글
[iOS] navigation bar의 large title를 쓸 때 반투명으로 바꾸는 방법 (0) 2021.08.25 [iOS] scrollViewDidEndScrollingAnimation이 시뮬레이터에서는 호출되지만 디바이스에서 호출되지 않을 때 (0) 2021.03.24 [iOS] hidesSearchBarWhenScrolling가 작동하지 않을 때 (0) 2021.03.13 [iOS] tableView.indexPath(for: UITableViewCell)이 nil이 반환될 때 (0) 2021.03.09 [iOS] Dynamic Font (0) 2021.02.10