Skip to content


초기 SDK 설정

이 참조 문서에서는 tvOS용 Braze SDK를 설치하는 방법을 설명합니다. Braze SDK를 설치하면 기본적인 분석 기능을 사용할 수 있습니다.

tvOS Braze SDK는 Objective-C 및 Swift 프로젝트의 종속성 매니저인 CocoaPods를 사용하여 설치하거나 업데이트해야 합니다. CocoaPods를 사용하면 통합과 업데이트가 더욱 간편해집니다.

tvOS SDK CocoaPods 통합

1단계: CocoaPods 설치

tvOS CocoaPods를 통해 SDK를 설치하면 대부분의 설치 과정이 자동화됩니다. 이 프로세스를 시작하기 전에 Ruby 버전 2.0.0 이상을 사용하고 있는지 확인하세요.

시작하려면 다음 명령을 실행합니다:

1
$ sudo gem install cocoapods
  • rake 실행 파일을 덮어쓸 것인지 묻는 메시지가 나타나면, CocoaPods.org의 시작하기를 참조하세요.
  • CocoaPods와 관련된 문제가 있는 경우, CocoaPods 문제 해결 가이드를 참조하세요.

2단계: Podfile 구성

CocoaPods Ruby Gem을 설치했으므로 이제 Xcode 프로젝트 디렉토리에 Podfile이라는 파일을 생성해야 합니다.

Podfile에 다음 줄을 추가합니다:

1
2
3
target 'YourAppTarget' do
  pod 'Appboy-tvOS-SDK'
end

Braze에 버전을 지정하여 pod 업데이트 시 마이너 버전 업데이트 미만의 변경 사항을 자동으로 가져오도록 하는 것이 좋습니다. pod 'Appboy-tvOS-SDK' ~> Major.Minor.Build와 같이 작성하면 됩니다. 메이저 변경 사항을 포함하여 최신 Braze SDK 버전을 자동으로 통합하려면, Podfile에서 pod 'Appboy-tvOS-SDK'를 사용할 수 있습니다.

3단계: Braze SDK 설치

Braze SDK CocoaPods를 설치하려면, 터미널에서 Xcode 앱 프로젝트의 디렉토리로 이동한 후 다음 명령을 실행합니다:

1
pod install

이 시점에서 CocoaPods가 생성한 새로운 Xcode 프로젝트 워크스페이스를 열 수 있어야 합니다. Xcode 프로젝트 대신 이 Xcode 워크스페이스를 사용하세요.

CocoaPods가 생성한 새로운 Xcode 프로젝트 워크스페이스를 열 수 있어야 합니다. Xcode 프로젝트 대신 이 Xcode 워크스페이스를 사용하세요.

4단계: 앱 델리게이트 업데이트

AppDelegate.m 파일에 다음 코드 줄을 추가합니다:

1
#import <AppboyTVOSKit/AppboyKit.h>

AppDelegate.m 파일의 application:didFinishLaunchingWithOptions 메서드 내에 다음 스니펫을 추가합니다:

1
2
3
[Appboy startWithApiKey:@"YOUR-API-KEY"
         inApplication:application
     withLaunchOptions:launchOptions];

마지막으로, YOUR-API-KEY설정 관리 페이지의 올바른 값으로 업데이트합니다.

Braze SDK를 CocoaPods 또는 Carthage로 통합하는 경우, AppDelegate.swift 파일에 다음 코드 줄을 추가합니다:

1
import AppboyTVOSKit

Swift 프로젝트에서 Objective-C 코드를 사용하는 방법에 대한 자세한 내용은 Apple 개발자 문서를 참조하세요.

AppDelegate.swift에서 application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 내에 다음 스니펫을 추가합니다:

1
Appboy.start(withApiKey: "YOUR-API-KEY", in:application, withLaunchOptions:launchOptions)

다음으로, YOUR-API-KEY설정 관리 페이지의 올바른 값으로 업데이트합니다.

sharedInstance 싱글톤은 startWithApiKey:가 호출되기 전에는 nil이 됩니다. 이는 Braze 기능을 사용하기 위한 전제 조건입니다.

5단계: 커스텀 엔드포인트 또는 데이터 클러스터 지정

Braze 담당자가 이미 올바른 엔드포인트를 안내했을 것입니다.

기존 커스텀 엔드포인트가 제공된 경우:

  • Braze iOS SDK v3.0.2부터 Info.plist 파일을 사용하여 커스텀 엔드포인트를 설정할 수 있습니다. Info.plist 파일에 Appboy 사전을 추가합니다. Appboy 사전 내에 Endpoint 문자열 하위 항목을 추가하고, 값을 커스텀 엔드포인트 URL의 권한 부분으로 설정합니다(예: https://sdk.iad-01.braze.com이 아닌 sdk.iad-01.braze.com).

런타임 엔드포인트 구성

기존 커스텀 엔드포인트가 제공된 경우:

  • Braze iOS SDK v3.17.0+부터 startWithApiKey:inApplication:withLaunchOptions:withAppboyOptions:에 전달되는 appboyOptions 매개변수 내의 ABKEndpointKey를 통해 엔드포인트를 재정의할 수 있습니다. 값을 커스텀 엔드포인트 URL의 권한 부분으로 설정합니다(예: https://sdk.iad-01.braze.com이 아닌 sdk.iad-01.braze.com).

SDK 통합 완료

이제 Braze가 애플리케이션에서 데이터를 수집하고 있으며, 기본 통합이 완료되었습니다. tvOS 앱과 기타 서드파티 라이브러리를 컴파일할 때 Bitcode를 활성화해야 합니다.

CocoaPods를 통한 Braze SDK 업데이트

CocoaPod를 업데이트하려면 프로젝트 디렉토리 내에서 다음 명령을 실행하면 됩니다:

1
pod update

시작 시 Braze 커스터마이즈하기

시작 시 Braze를 커스터마이즈하려면 Braze 초기화 메서드 startWithApiKey:inApplication:withLaunchOptions:withAppboyOptions를 사용하고 Braze 시작 키의 선택적 NSDictionary를 전달할 수 있습니다.

AppDelegate.m 파일의 application:didFinishLaunchingWithOptions 메서드 내에 다음 Braze 메서드를 추가합니다:

1
2
3
4
[Appboy startWithApiKey:@"YOUR-API-KEY"
          inApplication:application
      withLaunchOptions:launchOptions
      withAppboyOptions:appboyOptions];

AppDelegate.swiftapplication(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 메서드 내에 다음 Braze 메서드를 추가합니다:

1
2
3
4
Appboy.start(withApiKey: "YOUR-API-KEY",
                 in:application,
                 withLaunchOptions:launchOptions,
                 withAppboyOptions:appboyOptions)

여기서 appboyOptions는 시작 구성 값의 Dictionary입니다.

이 메서드는 startWithApiKey:inApplication:withLaunchOptions: 초기화 메서드를 대체하며, 다음 매개변수를 사용하여 호출됩니다:

  • YOUR-API-KEY: 애플리케이션의 API 키는 Braze 대시보드의 설정 관리에서 확인할 수 있습니다.
  • application: 현재 앱입니다.
  • launchOptions: application:didFinishLaunchingWithOptions:에서 가져오는 옵션 NSDictionary입니다.
  • appboyOptions: Braze의 시작 구성 값이 포함된 선택적 NSDictionary입니다.

Braze 시작 키 목록은 Appboy.h를 참조하세요.

Appboy.sharedInstance()와 Swift 널 가능성

일반적인 관행과 다소 다르게, Appboy.sharedInstance() 싱글턴은 옵셔널입니다. 이는 startWithApiKey:가 호출되기 전에 sharedInstancenil이기 때문이며, 지연 초기화를 사용할 수 있는 비표준이지만 유효한 구현이 존재하기 때문입니다.

didFinishLaunchingWithOptions: 델리게이트에서 Appboy의 sharedInstance에 접근하기 전에 startWithApiKey:를 호출하는 경우(표준 구현), Appboy.sharedInstance()?.changeUser("testUser")와 같은 옵셔널 체이닝을 사용하여 번거로운 검사를 피할 수 있습니다. 이는 널이 아닌 sharedInstance를 가정하는 Objective-C 구현과 동일한 동작을 합니다.

수동 통합 옵션

tvOS SDK를 수동으로 통합할 수도 있습니다. 공개 리포지토리에서 프레임워크를 가져온 후 앞의 섹션에 설명된 대로 Braze를 초기화하면 됩니다.

사용자 식별 및 분석 보고

사용자 ID 설정, 커스텀 이벤트 로깅, 사용자 속성 설정에 대한 정보는 iOS 설명서를 참조하세요. 또한 이벤트 명명 규칙을 숙지하는 것을 권장합니다.

New Stuff!