
앱보이키트 (Objective-C 소프트웨어 개발 키트라고도 함)는 더 이상 지원되지 않으며 Swift SDK. 새로운 기능, 버그 수정, 보안 업데이트 또는 기술 지원은 더 이상 제공되지 않지만 메시징 및 분석은 정상적으로 계속 작동합니다. 자세한 내용은 새로운 Braze Swift 소프트웨어 개발 키트 소개 를 참조하세요.
초기 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 워크스페이스를 사용하세요.

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 기능을 사용하기 위한 전제 조건입니다.

애플리케이션의 메인 스레드에서 Braze를 초기화해야 합니다. 비동기적으로 초기화하면 기능이 손상될 수 있습니다.
5단계: 커스텀 엔드포인트 또는 데이터 클러스터 지정

2019년 12월부터 커스텀 엔드포인트는 더 이상 제공되지 않습니다. 기존 커스텀 엔드포인트가 있는 경우 계속 사용할 수 있습니다. 자세한 내용은 사용 가능한 엔드포인트 목록 을 참조하세요.
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).

Braze iOS SDK v3.17.0에서 ABKAppboyEndpointDelegate를 사용한 런타임 엔드포인트 설정 지원이 제거되었습니다. 이미 ABKAppboyEndpointDelegate를 사용하고 있다면, Braze iOS SDK 버전 v3.14.1~v3.16.0에서 getApiEndpoint() 메서드의 dev.appboy.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.swift의 application(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:가 호출되기 전에 sharedInstance가 nil이기 때문이며, 지연 초기화를 사용할 수 있는 비표준이지만 유효한 구현이 존재하기 때문입니다.
didFinishLaunchingWithOptions: 델리게이트에서 Appboy의 sharedInstance에 접근하기 전에 startWithApiKey:를 호출하는 경우(표준 구현), Appboy.sharedInstance()?.changeUser("testUser")와 같은 옵셔널 체이닝을 사용하여 번거로운 검사를 피할 수 있습니다. 이는 널이 아닌 sharedInstance를 가정하는 Objective-C 구현과 동일한 동작을 합니다.
수동 통합 옵션
tvOS SDK를 수동으로 통합할 수도 있습니다. 공개 리포지토리에서 프레임워크를 가져온 후 앞의 섹션에 설명된 대로 Braze를 초기화하면 됩니다.
사용자 식별 및 분석 보고
사용자 ID 설정, 커스텀 이벤트 로깅, 사용자 속성 설정에 대한 정보는 iOS 설명서를 참조하세요. 또한 이벤트 명명 규칙을 숙지하는 것을 권장합니다.