-
NotificationI'm a Developer/iOS & macOS 2020. 3. 2. 15:48
Notification에 대해 글을 쓸까 합니다.
iOS에서 Notification은 크게 3가지로 볼 수 있습니다.
1. Notification
하나의 프로그램내에서 객체들이 주고 받는 메시지
특정 이벤트에 대해 옵저버를 등록하고 이벤트가 호출되면 옵저버에 등록해놓은 이벤트 핸들러를 호출합니다.
눈에 보이지 않습니다.
Foundation 프레임워크에서 NotificationCenter 객체를 주로 사용
별도의 권한이 필요없습니다.
2. Local Notification
지정된 시간에 로컬 Device(스마트폰)에서 사용자에게 알람을 전달하는 기능입니다.
알림으로 보여집니다.
UserNotification 프레임워크에서 제공
별도의 권한이 필요없습니다.
3. Remote Notification
대표적으로 카카오톡같은 앱에서 메시지가 오면 알람이 오는 푸시메시지를 일컫는 말입니다.
즉 서버에서 내 디바이스로 알림을 보내는 기능입니다.
알림으로 보여집니다.
UserNotification 프레임워크에서 제공
원격서버 직접 구축해야함(Provider) → Provider가 noti정보(json)를 담아 APNs로 전달 → Device로 전달
인증되지 않은 Provider는 APNs로 푸시를 할 수 없습니다.
별도의 권한이 필요없습니다
UserNotificationCenter를 통해 Local과 Remote Notification이 관리되는데
Foreground일 경우에는 delegate로 notification을 전달하고,
직접 화면에서 실행되지 않는 Background나 Not Running상태라면 직접 Banner를 표시합니다.
'I'm a Developer > iOS & macOS' 카테고리의 다른 글