Android 푸시 메시지 연동

1

Firebase 프로젝트 연동하기

안드로이드 앱에서 푸시 메시지를 사용하기 위해서는 핵클 워크스페이스와 Firebase 프로젝트 연동 설정이 필요합니다.

자세한 내용은 Android FCM 연동을 참고해주세요.

2

Firebase Cloud Messaging SDK 연동하기

Firebase SDK 연동 가이드arrow-up-rightFirebase Cloud Messaging 설치 가이드arrow-up-right를 참고하여 안드로이드 앱 설정을 완료해주세요.

3

핵클 SDK와 연동하기

SDK 연동 을 참고해서 핵클 SDK 의존성을 추가하고 SDK를 초기화 합니다.

앱 실행 시 자동으로 푸시 토큰이 수집됩니다.

circle-info

정상적으로 SDK 연동이 완료되면 자동으로 푸시 토큰 수집이 되고, 푸시 수신, 푸시 클릭 처리가 가능합니다.

4

푸시 메시지 테스트

토큰 확인

발송 테스트

5

푸시 메시지 수신

푸시 수신 시 status bar와 알림센터에 아이콘이 표시됩니다.

  • 갤럭시 안드로이드 스마트폰 환경에서는 앱 아이콘이 표시됩니다.

  • 일반 안드로이드 스마트폰 or 시뮬레이터 환경에서는 흰색 원 아이콘이 표시됩니다.

  • 푸시메시지 아이콘 변경 기능을 이용한 경우 변경한 아이콘이 표시됩니다.

딥링크 이동

핵클 푸시 메시지는 클릭 시 딥링크 이동을 지원합니다.

Android 환경에서 React Native 딥링크를 사용하는 방법은 React Native 딥링크 가이드arrow-up-right 에서 확인 가능합니다.

circle-exclamation

푸시 메시지 아이콘 변경

circle-info

React Native SDK 3.25.0 버전 이상에서 지원하는 기능입니다.

circle-exclamation

핵클 푸시 메시지는 푸시 아이콘 변경을 지원합니다. AndroidManifest.xml에 미리 예약된 key에 리소스를 할당하면 앱 내 로컬 리소스를 이용해서 푸시 아이콘을 변경할 수 있습니다.

circle-info

small_icon, large_icon, color에 대한 자세한 사항은 안드로이드 푸시 디자인 가이드arrow-up-right 에서 확인 가능합니다.

key
설명

io_hackle_android_default_notification_small_icon

small icon을 설정합니다.

io_hackle_android_default_notification_large_icon

large icon을 설정합니다.

io_hackle_android_default_notification_color

small icon background 색상을 설정합니다.

Example

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
    <application
        android:name=".MainApplication"
        >
       ...
       <meta-data
            android:name="io_hackle_android_default_notification_small_icon"
            android:resource="@drawable/ic_push_small"/>

       <meta-data
            android:name="io_hackle_android_default_notification_large_icon"
            android:resource="@drawable/ic_push_large"/>

       <meta-data
            android:name="io_hackle_android_default_notification_color"
            android:resource="@color/pie" />
       ...
    </application>
</manifest>

대시보드에서 푸시 메시지 아이콘 수정

대시보드에서 푸시 아이콘을 설정 한 경우 푸시의 large icon을 수정합니다.

  • 로컬 리소스로 푸시 아이콘을 설정하고 대시보드에서도 푸시 아이콘을 송신 한 경우 대시보드에 설정 한 아이콘을 사용합니다.

푸시 채널 지원

circle-info

React Native SDK 3.26.0 버전 이상에서 지원하는 기능입니다.

핵클 푸시 메시지를 이용하면 앱 내 미리 선언한 채널로 푸시를 수신받을 수 있습니다. 앱에 존재하지 않는 채널 ID로 푸시 수신 시 핵클에서 제공하는 기본 채널로 푸시를 수신받습니다.

circle-info

앱에 푸시 채널을 추가하는 자세한 방법은 안드로이드 개발자 문서arrow-up-right 에서 확인 가능합니다.

만약 iOS와 같이 푸시 수신 시 알림 팝업을 띄우고 싶다면 푸시 채널의 중요도를 IMPORTANCE_HIGH로 설정해주세요.

Example

아래는 Application 클래스의 onCreate 함수에서 채널을 만드는 예제입니다.

마지막 업데이트