콘텐츠로 건너뛰기

다양한 푸시 알림

Braze SDK에 대한 리치 푸시 알림을 설정하는 방법을 알아보세요.

필수 조건

이 기능을 사용하려면 먼저 Swift Braze SDK를 통합해야 합니다. 푸시 알림도 설정해야 합니다.

리치 푸시 알림 설정하기

1단계: 서비스 확장 만들기

알림 서비스 확장을 만들려면 Xcode에서 File > New > Target으로 이동하여 Notification Service Extension을 선택합니다.

리치 푸시를 위한 Notification Service Extension을 만드는 Xcode 대상 선택기.

확장이 애플리케이션에 임베드되도록 Embed In Application이 설정되어 있는지 확인합니다.

2단계: 알림 서비스 확장 설정하기

알림 서비스 확장은 앱과 함께 번들로 제공되는 별도의 바이너리입니다. Apple 개발자 포털에서 자체 앱 ID와 프로비저닝 프로필을 사용하여 설정해야 합니다.

알림 서비스 확장의 번들 ID는 기본 앱 대상의 번들 ID와 달라야 합니다. 예를 들어 앱의 번들 ID가 com.company.appname인 경우, 서비스 확장에는 com.company.appname.AppNameServiceExtension을 사용할 수 있습니다.

3단계: 앱 그룹 추가하기

Xcode에서 Signing & Capabilities 창에 있는 App Groups 기능을 기본 앱 대상과 Notification Service Extension 대상에 모두 추가합니다. 그런 다음 + 버튼을 클릭합니다. 앱의 번들 ID를 사용하여 앱 그룹을 만듭니다. 예를 들어 앱의 번들 ID가 com.company.appname인 경우, 앱 그룹 이름을 group.com.company.appname.xyz로 지정할 수 있습니다.

기본 앱과 Notification Service Extension이 공유 데이터에 액세스할 수 있도록 공유 앱 그룹이 필요합니다. 앱을 앱 그룹에 추가하지 않으면 앱이 푸시 페이로드의 특정 필드를 채우지 못해 예상대로 완전히 작동하지 않을 수 있습니다.

4단계: 리치 푸시 알림 통합하기

BrazeNotificationService로 리치 푸시 알림을 통합하는 단계별 가이드는 튜토리얼을 참조하세요.

샘플을 보려면 Examples 앱의 NotificationService 사용 예시를 참조하세요.

앱에 리치 푸시 프레임워크 추가하기

스위프트 패키지 매니저 통합 가이드를 따른 후, 다음 단계에 따라 Notification Service Extension에 BrazeNotificationService를 추가합니다.

  1. Xcode의 frameworks and libraries 아래에서 추가 아이콘을 선택하여 프레임워크를 추가합니다.

    Xcode의 frameworks and libraries 아래에 있는 더하기 아이콘.

  2. “BrazeNotificationService” 프레임워크를 선택합니다.

    열린 Modal에서 BrazeNotificationService 프레임워크를 선택할 수 있습니다.

Podfile에 다음을 추가합니다.

target 'YourAppTarget' do
  pod 'BrazeKit'
  pod 'BrazeUI'
  pod 'BrazeLocation'
end

target 'YourNotificationServiceExtensionTarget' do
  pod 'BrazeNotificationService'
end

# Only include the below if you want to also integrate Push Stories
target 'YourNotificationContentExtensionTarget' do
  pod 'BrazePushStory'
end

Podfile을 업데이트한 후 터미널에서 Xcode 앱 프로젝트 디렉토리로 이동하여 pod install을 실행합니다.

Notification Service Extension에 BrazeNotificationService.xcframework를 추가하려면 수동 통합을 참조하세요.

알림 서비스 확장에 BrazeNotificationService.xcframework가 추가된 Xcode 프로젝트.

생성된 Xcode 프로젝트 문제 해결

Tuist 같은 빌드 도구로 Xcode 프로젝트를 생성하는 경우, 생성된 프로젝트에서 BrazeNotificationService가 Notification Service Extension 대상에 계속 연결되어 있고 해당 리소스가 확장 번들에 보존되는지 확인하세요. 일부 생성된 프로젝트 구조에서는 리소스가 예상치 못한 번들에 배치될 수 있으며, 이로 인해 런타임에 리치 푸시 에셋이 로드되지 않을 수 있습니다.

도움이 필요하면 다음 리소스를 참조하세요.

자체 UNNotificationServiceExtension 사용하기

자체 UNNotificationServiceExtension을 사용해야 하는 경우, 대신 didReceive 메서드에서 brazeHandle을 호출할 수 있습니다.

import BrazeNotificationService
import UserNotifications

class NotificationService: UNNotificationServiceExtension {

  override func didReceive(
    _ request: UNNotificationRequest,
    withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void
  ) {
    if brazeHandle(request: request, contentHandler: contentHandler) {
      return
    }

    // Custom handling here

    contentHandler(request.content)
  }
}

5단계: Braze에서 앱 그룹 구성하기

Braze를 초기화하기 전에 앱 그룹 이름을 Braze 구성의 push.appGroup 속성정보에 할당합니다.

let configuration = Braze.Configuration(apiKey: "<YOUR-BRAZE-API-KEY>",
                                        endpoint: "<YOUR-BRAZE-ENDPOINT>")
configuration.push.appGroup = "REPLACE_WITH_APPGROUP"
let braze = Braze(configuration: configuration)

6단계: 대시보드에서 리치 알림 만들기

마케팅 팀은 대시보드에서도 리치 알림을 만들 수 있습니다. 푸시 작성기에서 푸시 알림을 만들고 이미지나 GIF를 첨부하거나, 이미지, GIF 또는 비디오를 호스팅하는 URL을 입력하세요. 에셋은 푸시 알림을 수신할 때 다운로드되므로, 콘텐츠를 직접 호스팅하는 경우 요청이 대량으로 동시에 급증할 것에 대비해야 합니다.

필수 조건

이 기능을 사용하려면 먼저 Cordova Braze SDK를 통합해야 합니다. 푸시 알림도 설정해야 합니다.

리치 푸시 알림 설정하기

1단계: 알림 서비스 확장 만들기

Xcode 프로젝트에서 알림 서비스 확장을 만듭니다. 전체 안내는 iOS 리치 푸시 알림 튜토리얼을 참조하세요.

2단계: 새 대상 추가하기

Podfile을 열고 방금 만든 알림 서비스 확장 대상에 BrazeNotificationService를 추가합니다. BrazeNotificationService가 이미 대상에 추가되어 있는 경우, 계속하기 전에 제거하세요. 중복 심볼 오류를 방지하려면 정적 링킹을 사용하세요.

target 'NOTIFICATION_SERVICE_EXTENSION' do
  use_frameworks! :linkage => :static
  pod 'BrazeNotificationService'
end

NOTIFICATION_SERVICE_EXTENSION을 알림 서비스 확장의 이름으로 바꾸세요. Podfile은 다음과 유사해야 합니다:

target 'MyAppRichNotificationService' do
  use_frameworks! :linkage => :static
  pod 'BrazeNotificationService'
end

3단계: CocoaPods 종속성 재설치하기

터미널에서 프로젝트의 iOS 디렉토리로 이동하여 CocoaPod 종속성을 재설치합니다.

cd PATH_TO_PROJECT/platform/ios
pod install

필수 조건

이 기능을 사용하려면 먼저 React Native Braze SDK를 통합해야 합니다. 푸시 알림도 설정해야 합니다.

Expo를 사용하여 리치 푸시 알림 활성화하기

React Native SDK의 경우, 리치 푸시 알림은 Android에서 기본적으로 사용할 수 있습니다.

Expo를 사용하여 iOS에서 리치 푸시 알림을 활성화하려면 app.json의 expo.plugins 객체에서 enableBrazeIosRichPush 속성정보를 true로 설정하세요:

{
  "expo": {
    "plugins": [
      [
        "@braze/expo-plugin",
        {
          ...
          "enableBrazeIosRichPush": true
        }
      ]
    ]
  }
}

마지막으로, 이 앱 확장의 번들 식별자를 프로젝트의 자격 증명 구성에 추가합니다: <your-app-bundle-id>.BrazeExpoRichPush. 이 프로세스에 대한 자세한 내용은 Expo Application Services에서 앱 확장 사용하기를 참조하세요.

New Stuff!