반응형
foreground background 에서는 푸시 클릭 시 화면 랜딩이 잘 되는데, 앱이 꺼져있는 상태에서 클릭 시 화면 이동이 되지 않았다.
앱 처음 진입시 로그인 하는 시간이 필요한데, 그 전에 딥링크 이동 로직을 타버리면 유저정보가 아직 세팅되기 전이라 다음 구문이 실행되지 않게 되더라.
if AppDelegate.shared.user != nil {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) {
Common.handleRendingLink(parameters: data)
}
}
푸시 클릭 했을 때, 유저 정보가 세팅되기 전이면 푸시 화면 이동 로직을 pending 시켜주는 코드가 추가되어야 한다.
final class PushNotificationHandler {
static let shared = PushNotificationHandler()
var isPending: Bool = false
private var userInfo: [AnyHashable: Any]?
private init() {}
func handle(with userInfo: [AnyHashable: Any]) {
guard let notification = PushNotificationBuilder.build(with: userInfo) else { return }
let result = notification.handle()
if !result {
self.isPending = true
self.userInfo = userInfo
}
}
func handlePendingPushNotification() {
guard let userInfo else { return }
self.handle(with: userInfo)
self.userInfo = nil
}
}
왜 내 맥북 콘솔에서 로그가 찍히지 않는것이야!! ㅠ
728x90
반응형
'초보 iOS 개발자의 일상 > 이슈모음집' 카테고리의 다른 글
xcode 16 이슈 (0) | 2024.11.01 |
---|---|
운영 결제 QA 중 이니시스 웹뷰에서 세션 끊기는 이슈 (feat. www) (1) | 2024.09.30 |
Firebase push 간헐적으로 씹히는 이슈 (1) | 2024.09.06 |
no such module 'SendbirdChatSDK' (0) | 2024.06.07 |
pod install error (0) | 2023.06.02 |