(iOS v3.0.x) 1. 공통 마이그레이션 가이드
목차
개요
이 장에서는 BuzzAd iOS용 SDK 버전을 3.0으로 업데이트하기 위해 필요한 설정을 안내합니다.
주요 변경 사항
BuzzAd iOS용 SDK가 포함하는 퍼블릭 클래스를 내부 클래스와 구별할 수 있도록 퍼블릭 클래스의 Prefix를 BZV
로 통일했습니다. 또한, 퍼블릭 데이터 클래스들의 확장성을 위해 빌더 패턴을 사용하여 생성하도록 변경했습니다.
SDK 버전 업데이트
CocoaPods를 사용하여 추가한 지면별 라이브러리를 BuzzAdBenefit 라이브러리로 대체하고 버전을 3.0.6으로 업데이트 하세요.
2.x (변경 전)
pod 'BuzzAdBenefitFeed', '= 2.x.x'
pod 'BuzzAdBenefitNative', '= 2.x.x'
pod 'BuzzAdBenefitInterstitial', '= 2.x.x'
3.x (변경 후)
pod 'BuzzAdBenefit', '= 3.0.6'
SDK 초기화하기
BuzzAd iOS용 SDK 3.0에서 SDK를 초기화하려면 아래의 순서대로 기존 코드를 수정하세요.
AppDelegate
에 추가한BABConfig
를 생성하는 코드와BuzzAdBenefit
를 초기화하는 코드를 삭제하세요.AppDelegate
에서 빌더 블록을 이용해BZVConfig
를 생성하고BuzzAdBenefit
를 초기화하세요.
Objective-C
2.x (변경 전)
@import BuzzAdBenefit;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
BABConfig *config = [[BABConfig alloc] initWithAppId:@"YOUR_APP_ID"];
[BuzzAdBenefit initializeWithConfig:config];
return YES;
}
@end
3.x (변경 후)
Swift
2.x (변경 전)
3.x (변경 후)
사용자 프로필 설정 및 토큰 발급 콜백 받기
BuzzAd iOS용 SDK 3.0에서는 사용자 프로필을 설정하는 기능을 로그인 기능으로 변경했습니다. 또한, 기존에 BABSessionRegisteredNotification
을 구독하여 사용자 프로필 설정이 완료된 시점을 확인하는 코드를 로그인 API의 onSuccess
블록으로 대체했습니다. 아래의 순서대로 기존 코드를 수정하세요.
BABUserProfile
를 생성하는 코드와BuzzAdBenefit
의setUserProfile
함수를 호출하는 코드를 삭제하세요.빌더 블록을 이용해
BZVLoginRequest
를 생성하고BuzzAdBenefit
의login
함수를 호출하여 로그인을 요청하세요.BABSessionRegisteredNotification
을 구독하여 사용자 프로필 설정이 완료된 시점에 수행하던 동작을login
함수의onSuccess
블록에서 수행하도록 변경하세요.
노티피케이션 전송 및 수신이 필요하다면 onSuccess
블록에서 자체 구현한 노티피케이션을 전송할 수 있습니다.
Objective-C
2.x (변경 전)
3.x (변경 후)
Swift
2.x (변경 전)
3.x (변경 후)
커스텀 런처 구현하기
사용자가 클릭한 광고나 콘텐츠를 직접 구현한 커스텀 인앱 브라우저로 보여주기 위해 기존에 커스텀 런처를 사용하는 경우에만 해당합니다.
BuzzAd iOS용 SDK 3.0에서는 커스텀 런처의 open
함수에서 받던 delegate 인자를 BZVLauncher
프로토콜의 프로퍼티로 대체했습니다. 또한, 직관적으로 기능을 파악할 수 있도록 delegate 함수들의 이름을 명확하게 변경했습니다. 아래의 순서대로 기존 코드를 수정하세요.
BABCustomLauncher
프로토콜을BZVCustomLauncher
프로토콜로 교체하세요.커스텀 런처 클래스에
BZVLauncherDelegate
타입의delegate
변수를 추가하세요.커스텀 런처 클래스의
open
함수를 호출할 때마다 인자로 넘겨주었던delegate
를 커스텀 런처 클래스의 delegate 프로퍼티로 설정하세요.
Objective-C
2.x (변경 전)
3.x (변경 후)
Swift
2.x (변경 전)
3.x (변경 후)
사용자의 활동 추적 권한 획득 팝업 제공하기
기존에 BuzzAd iOS용 SDK를 이용해 활동 추적 혀용 권한 팝업을 표시하는 경우에만 해당합니다.
BuzzAd iOS용 SDK 3.0에서는 사용자 프로필 설정 기능을 로그인 기능으로 변경하고 로그인 API 호출 시 활동 추적 허용 권한 팝업을 표시할 수 있도록 변경했습니다.
BuzzAdBenefit
의 setUserProfile
함수 호출 시점에 설정하던 showAppTrackingTransparencyDialog
플래그를 login
함수 호출 시점에 설정하세요.
Objective-C
2.x (변경 전)
3.x (변경 후)
Swift
2.x (변경 전)
3.x (변경 후)
액션형 광고 설정하기
BuzzAd iOS용 SDK 3.0에서 액션형 광고를 설정하려면 [BuzzAdBenefit showInquiryPageOnViewController:unitId:]
함수를 [BuzzAdBenefit presentInquiryPageOnViewController:unitId:]
로 변경하세요.
Objective-C
2.x (변경 전)
3.x (변경 후)
Swift
2.x (변경 전)
3.x (변경 후)
동영상 광고 재생 조건 변경하기
BuzzAd iOS용 SDK 3.0에서 동영상 광고의 자동 재생 조건을 변경하려면 아래의 순서대로 기존 코드를 수정하세요.
BABConfig
를 생성하고BuzzAdBenefit
에 설정하는 코드를 삭제하세요.빌더 블록을 이용해
BZVConfig
를 생성하고BuzzAdBenefit
에 설정하세요.
Objective-C
2.x (변경 전)
3.x (변경 후)
Swift
2.x (변경 전)
3.x (변경 후)
API 변경 내역
2.x (변경 전) | 3.0 (변경 후) | 설명 |
---|---|---|
|
| 클래스의 이름을 변경하고 빌더 블록을 이용해 생성하도록 변경했습니다. |
|
| 클래스의 이름을 변경하고 빌더 블록을 이용해 생성하도록 변경했습니다. |
|
| 함수의 이름을 변경하고 |
|
| 사용자 프로필 등록이 완료된 시점에 노티피케이션을 발행하는 대신에 |
|
| 클래스의 이름을 변경하고 |
|
| 클래스의 이름을 변경했습니다. |
|
| 클래스의 이름을 변경하고 |
|
| 함수를 삭제하고 |
|
| 함수의 이름을 변경했습니다. |
|
| 클래스의 이름을 변경하고 빌더 블록을 이용해 생성하도록 변경했습니다. |