콘텐츠로 이동

푸시 알림

'푸시 알림' 서비스는 사용자 기기에 정보성 및 광고성 메시지를 실시간으로 전송하는 글로벌 메시징 솔루션입니다. Firebase Cloud Messaging(FCM)과 Apple Push Notification service(APNs)와 같은 외부 메시징 인프라를 활용한 원격 중계 전송 기능의 '리모트 푸시'를 제공합니다.

Hive Axyl 푸시 서버에서 FCM·APNs와 OS를 거쳐 앱 클라이언트까지 이어지는 '푸시 알림'의 동작 흐름을 나타낸 그림입니다. Hive Axyl 푸시 서버는 리모트 푸시 메시지를 생성하고 대상 토큰을 조회해 발송 요청을 처리합니다. 외부 메시징 인프라인 FCM과 APNs는 단말 라우팅을 처리합니다. OS인 Android, iOS, macOS는 알림을 수신해 표시하고 앱에 알림 데이터를 전달합니다. 앱 클라이언트는 디바이스 토큰 등록, 수신 동의 관리, 페이로드 해석을 담당합니다.

'푸시 알림'은 아래 흐름으로 동작합니다.

  1. Hive Axyl 푸시 서버: 리모트 푸시 메시지 생성, 대상 토큰 조회, 발송 요청 처리
  2. FCM / APNs: 외부 메시징 인프라를 통한 단말 라우팅 처리
  3. OS(Android / iOS / macOS): 알림 수신, 표시, 앱에 알림 데이터 전달
  4. 앱 클라이언트: 디바이스 토큰 등록, 수신 동의 관리, 페이로드 해석

앱에서는 Hive Axyl SDK가 제공하는 디바이스 토큰 수집, 서버 등록, 수신 이벤트, 콜드 스타트 페이로드 조회 기능을 사용할 수 있습니다. 메시지 발송은 Hive 콘솔 또는 서버 API에서 수행합니다.

제공 기능

푸시 알림 서비스는 Hive Axyl 푸시 서버와 OS별 외부 메시징 인프라를 통해 리모트 푸시 알림을 전송합니다.

Hive Axyl 푸시 서버에서 알림 메시지를 생성하고, 외부 메시징 인프라(FCM 혹은 APNs)를 거쳐 대상 기기에 원격으로 전송하여 화면에 표시하는 방식입니다. '리모트 푸시 알림'은 운영 목적 및 타겟 조건에 따라 특정 그룹을 대상으로 대량 발송하는 '캠페인 푸시'와 이벤트가 발생한 순간 개인에게 즉시 발송하는 '싱글 푸시'로 분류됩니다.

  • 캠페인 푸시


    App ID, 국가 코드 등 타겟팅 세부 조건을 결합하여 다수의 사용자에게 일괄 발송하거나, 특정 시점에 광고성/정보성 메시지를 발송하는 푸시 기능입니다.

    • Hive 콘솔의 푸시 캠페인 등록에서 발송 대상과 알림 양식에 맞게 메시지를 등록하고 지정한 시간에 맞춰 발송되도록 설정합니다.
    • '캠페인 푸시'는 유효한 디바이스 토큰만 있으면 발송할 수 있습니다. 앱 로그아웃으로 인해 Player ID 연동이 해제되더라도, 기기의 알림 수신 동의가 활성화되어 있고 타겟 조건에 부합하면 정상적으로 전송 및 노출됩니다.
  • 싱글 푸시


    앱 서버에서 Player ID 기준의 단일 사용자를 대상으로, 인앱 특정 이벤트가 발생하거나 비즈니스 조건이 충족되었을 때 자동으로 발송하는 푸시 기능입니다.

    • '싱글 푸시'는 Player ID를 기반으로 발송되므로, 앱 로그아웃 혹은 계정 삭제 이후 Player ID를 초기화하면 디바이스 토큰에 할당된 Player ID가 해제되어 발송할 수 없습니다.
macOS 푸시 알림 안내

macOS에서도 푸시 알림을 지원합니다. 단, macOS 환경에서는 APNs 푸시 알림의 수신이 불안정할 수 있어 iOS 환경에서보다 수신율이 낮을 수 있습니다.

SDK 모듈 구성

푸시 알림 서비스로 제공되는 SDK 모듈은 공통 서버 API 모듈과 OS별 애드온으로 나뉩니다.

구분 패키지 초기화 주요 기능
공통 푸시 com.hive.axyl.push builder.AddPush() 토큰 등록, 언어 변경, 수신 동의 변경, 사용자 식별자 연결 해제
Android 리모트 푸시 com.hive.axyl.push.addon.fcm builder.AddFCM() FCM 토큰 발급, 토큰 갱신 이벤트, 수신 메시지 이벤트, 콜드 스타트 메시지 조회
iOS 리모트 푸시 com.hive.axyl.push.addon.apns builder.AddAPNS() APNs 토큰 발급, APNs 환경 확인, 알림 권한 요청, 수신 알림 이벤트, 콜드 스타트 알림 조회

OS 애드온은 대상 OS에서만 포트가 등록됩니다. Unity Editor나 지원하지 않는 OS에서는 HiveCore.Resolve<T>() 대신 OS 분기 또는 HiveCore.TryResolve<T>()로 보호하세요.

다음 단계

시작하기에서 '푸시 알림' 기능 동작 방식과 구현 순서를 확인하세요.