Ad Quality SDK 연동하기
Ad Quality SDK로 앱에서 Ad Quality를 실행할 수 있습니다. Ad Quality SDK는 사용 중인 광고 네트워크 SDK들로부터 광고 이벤트 및 필요 어트리뷰션 정보들을 자동으로 수집합니다. 이 방법으로 Ad Quality SDK를 최소한의 코딩으로 간편하게 연동할 수 있습니다.
레벨플레이를 사용하는 퍼블리셔들은 단 한 줄의 코드만을 추가하면 Ad Quality SDK를 미디에이션과 함께 연동 및 업데이트 할 수 있습니다. 여기에 있는 문서를 참고하세요.
1단계: Ad Quality SDK를 앱에 불러오기
CocoaPods
CocoaPods는 Objective-C 및 Swift용 패키지 관리 도구이며, 이를 이용해 SDK 연동 과정을 자동화 및 간소화 할 수 있습니다. 더 많은 정보는 CocoaPods 가이드 문서 Getting Started 및 Using CocoaPods에서 확인하실 수 있습니다.
CocoaPods로 Ad Quality SDK를 연동하려면, 아래의 구문을 Podfile에 추가해 주세요:
pod 'IronSourceAdQualitySDK','7.22.3'
2단계: SDK 초기화 하기
- 유니티 레벨플레이 플랫폼에서 발급받은 아이언소스 앱 키로 Ad Quality SDK를 초기화하세요.
- 아래의 코드를 앱의 메인 스레드 또는 다른 광고 네트워크 SDK들의 스레드 상에 추가하여 Ad Quality SDK를 초기화합니다:
아래의 코드를 메인 ViewController의 viewDidLoad 메서드에 추가해 주세요:
#import "IronSourceAdQuality.h"
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Initialize
[[IronSourceAdQuality getInstance] initializeWithAppKey:appKey];
}
@end
3단계 (선택사항): 고급 SDK 초기화
연동 설정을 커스터마이즈하여 아래의 특수 구성으로 더 많은 기능을 사용할 수 있습니다:
- User ID – Ad Quality에서 제공되는 기본 ID 대신 직접 정의한 사용자 ID를 사용합니다
- Test mode – Ad Quality SDK 연동사항을 테스트합니다. (기본값은 false 입니다)
- Log level – 코드 이슈 디버그를 위한 로그 수준을 선택합니다 (기본값은 INFO 입니다)
아래의 코드를 사용해 빌더로 Ad Quality 설정 구성 오브젝트를 생성하세요.
ISAdQualityConfig *adQualityConfig = [ISAdQualityConfig config];
사용자 ID 설정
Ad Quality SDK는 사용자 ID 설정에 2 가지 옵션을 제공합니다:
1.직접 정의한 사용자 ID를 사용하고, 이를 SDK 초기화 이전 또는 도중에 등록합니다.
adQualityConfig.userId = userId;
// The default user id is Ad Quality internal id.
// The only allowed characters for user id are: letters, numbers, @, -, :, =, _ and /.
// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.
2. 초기화 이후 시점에 직접 정의하는 사용자 ID가 결정되는 경우, Ad Quality SDK 초기화 이후 기본 사용자 ID를 변경합니다.
[[IronSourceAdQuality getInstance] changeUserId:userId];
// The default user id is Ad Quality internal id.
// The only allowed characters for user id are: letters, numbers, @, -, :, =, _ and /.
// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.
테스트 모드 설정
adQualityConfig.testMode = YES;
// The default is NO - set to true only to test your Ad Quality integration
로그 수준 설정
adQualityConfig.logLevel = IS_AD_QUALITY_LOG_LEVEL_INFO;
// There are 5 different log levels:
// IS_AD_QUALITY_LOG_LEVEL_ERROR,
// IS_AD_QUALITY_LOG_LEVEL_WARNING,
// IS_AD_QUALITY_LOG_LEVEL_INFO,
// IS_AD_QUALITY_LOG_LEVEL_DEBUG,
// IS_AD_QUALITY_LOG_LEVEL_VERBOSE
// The default is IS_AD_QUALITY_LOG_LEVEL_INFO
[[IronSourceAdQuality getInstance] initializeWithAppKey:appKey andConfig:adQualityConfig];
4 단계 (선택사항): SDK 콜백 이벤트 설정
Ad Quality SDK가 초기화 되는 지점에서 iOS 콜백을 별도 클래스로 구현합니다.
ISAdQualityInitDelegate:
#import "IronSourceAdQuality.h"
@interface ViewController () : NSObject<ISAdQualityInitDelegate>
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
ISAdQualityConfig *config = [ISAdQualityConfig config];
[config setAdQualityInitDelegate:self];
// Initialize
[[IronSourceAdQuality getInstance] initializeWithAppKey:appKey
andConfig:config];
}
- (void)adQualitySdkInitSuccess {
NSLog(@"adQualitySdkInitSuccess");
}
- (void)adQualitySdkInitFailed:(ISAdQualityInitError) error withMessage:(NSString *)message {
NSLog(@"adQualitySdkInitFailed %u message: %@", error, message);
}
@end
5 단계 (선택사항): Ad Quality SDK로 광고 수익 측정데이터 보고
Ad Quality SDK 7.2.0 이상 버전에서는 광고 수익 측정 보고 기능을 지원합니다:
Ad Quality SDK에 광고 수익 측정 데이터를 전송하려면, SDK 연동 코드에 아래의 구문을 추가해 주세요.
ISAdQualityCustomMediationRevenue *customMediationRevenue = [[ISAdQualityCustomMediationRevenue alloc] init];
customMediationRevenue.mediationNetwork = IS_AD_QUALITY_MEDIATION_NETWORK_SELF_MEDIATED;
customMediationRevenue.adType = IS_AD_QUALITY_AD_TYPE_REWARDED;
customMediationRevenue.placement = "placement";
customMediationRevenue.revenue = 0.12;
[[IronSourceAdQuality getInstance] sendCustomMediationRevenue:customMediationRevenue];
AdMob 미디에이션을 사용하는 경우, 아래의 단계를 따라 설정해 주세요:
- AdMob 계정 관리 담당자에게 AdMob 노출 수준 광고 수익 활성화 (iLTV)를 요청해 주세요.
- 안드로이드 또는 iOS 의 경우 GMA SDK 버전이 8.12.0 이상인지, 그리고 iLTV를 지원하는 버전인지를 확인해 주세요.
- 아래의 코드 구문을 Ad Quality SDK 연동 코드에 추가합니다:
GADRewardedAd* rewardedAd;
[GADRewardedAd loadWithAdUnitID:@"AD_UNIT_ID"
request:request
completionHandler:^(GADRewardedAd *ad, NSError *error) {
if (error) {
NSLog(@"Rewarded ad failed to load with error: %@", [error localizedDescription]);
return;
}
self.rewardedAd = ad;
self.rewardedAd.paidEventHandler = ^void(GADAdValue *_Nonnull adValue){
ISAdQualityCustomMediationRevenue *customMediationRevenue = [[ISAdQualityCustomMediationRevenue alloc] init];
customMediationRevenue.mediationNetwork = IS_AD_QUALITY_MEDIATION_NETWORK_ADMOB;
customMediationRevenue.adType = IS_AD_QUALITY_AD_TYPE_REWARDED;
customMediationRevenue.placement = [rewardedAd adUnitID];
customMediationRevenue.revenue = adValue.value.doubleValue;
[[IronSourceAdQuality getInstance] sendCustomMediationRevenue:customMediationRevenue];
}
}];