Ad Quality SDK 연동하기

Ad Quality는 사용자가 보는 광고 콘텐츠를 모니터링하고 제어하여 앱의 목표에 부합하고 사용자 경험을 향상할 수 있도록 돕습니다. 잠재 수익을 극대화하면서 사용자의 참여를 유도하는 관련성 높은 광고를 게재하세요.

Before you start 레벨플레이에서 제공하는 단계별 가이드를 따라 레벨플레이 플랫폼에서 애플리케이션을 구성하세요

Note: 버전 8.9.0부터 Ad Quality는 레벨플레이 SDK에 통합되어 레벨플레이가 연동되어 있으면 레벨플레이 초기화 시 자동으로 초기화됩니다. 아래 단계는 빌드에 레벨플레이가 구현되지 않았거나 레벨플레이 SDK 8.9.0 이전 버전을 사용하는 경우에 적용됩니다.

1단계: 앱에 Ad Quality SDK 가져오기

  1. 다음 다운로드 링크를 사용하여 프로젝트에 Unity3D 패키지를 추가하세요:
  2. Unity3D 프로젝트가 열려 있는지 확인하고 Unity3D 패키지를 가져오세요.
  3. 추출된 파일을 더블클릭하세요. 아래와 같이 여러 파일이 자동으로 채워집니다: Assets → External Dependency Manager → Android Resolver → Resolve로 이동


중요합니다! Android 연동의 경우, “Resolve” 과정을 사용해야 합니다. 그러면 선택에 따라 모든 관련 아티팩트가 다운로드됩니다.

이동 경로: Assets → External Dependency Manager → Android Resolver → Resolve


2단계: SDK 초기화

  1. Unity 레벨플레이 플랫폼에서 발급받은 레벨플레이(아이언소스) 앱 키를 사용하여 Ad Quality SDK를 초기화하세요.
  2. Ad Quality SDK를 초기화하려면 앱의 메인 스레드 또는 다른 광고 네트워크 SDK와 동일한 스레드에 다음 코드를 추가합니다:

 

첫 번째 Scene의 Awake 메서드에 다음 코드를 추가합니다:

void Awake () { 
    // Initialize IronSourceAdQuality.Initialize(appKey); 
} 

3단계(선택): 고급 SDK 초기화

Note: 아래 구성을 사용하려면 레벨플레이 SDK를 초기화하기 전에 Ad Quality SDK를 초기화합니다.
다음과 같은 특별한 구성으로 연동 설정을 커스터마이즈하여 더 많은 기능을 활용해 보세요:

  1. 사용자 ID – Ad Quality의 기본 ID 대신 자체 사용자 ID를 사용합니다.
  2. 테스트 모드 – Ad Quality SDK 연동을 테스트합니다(기본값은 false).
  3. 로그 레벨 – 코드 문제를 디버깅하기 위한 로그 레벨을 선택합니다(기본값은 INFO).

아래 코드를 사용하여 Builder를 사용해 구성 객체를 생성합니다.

첫 번째 씬의 Awake 메서드에 다음 코드를 추가합니다:

ISAdQualityConfig adQualityConfig = new ISAdQualityConfig(); 

사용자 ID

Ad Quality SDK는 사용자 ID를 구성하는 두 가지 옵션을 제공합니다:

1. 자체 사용자 ID를 사용하고, 초기화 전이나 도중에 추가합니다:

adQualityConfig.UserId = userId; 
// The default user id is Ad Quality internal id. 
// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked. 

ID가 나중에 설정되는 경우를 위해, Ad Quality SDK를 초기화한 후 기본 사용자 ID를 변경합니다.

IronSourceAdQuality.ChangeUserId(userId); 
// The default user id is Ad Quality internal id. 
// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.

테스트 모드

adQualityConfig.TestMode = true; 
// The default is false - set to true only to test your Ad Quality integration 

로그 레벨

adQualityConfig.LogLevel = ISAdQualityLogLevel.INFO; 
// There are 5 different log levels: 
// ERROR, WARNING, INFO, DEBUG, VERBOSE 
// The default is INFO 
IronSourceAdQuality.Initialize(appKey, adQualityConfig); 

4단계(선택): SDK 콜백 이벤트 구성

Note: 레벨플레이를 사용하는 경우, 다음 기능을 사용하려면 먼저 Ad Quality를 초기화해야 합니다.

Unity3d 콜백은 Ad Quality SDK가 초기화된 동일한 위치에서 별도의 클래스로 구현해야 합니다.

public class AdQualitySdkInit: ISAdQualityInitCallback {

   public void adQualitySdkInitSuccess() {
       Debug.Log("unity: adQualitySdkInitSuccess");
   }
   public void adQualitySdkInitFailed(ISAdQualityInitError adQualitySdkInitError, string errorMessage) {
       Debug.Log("unity: adQualitySdkInitFailed " + adQualitySdkInitError + " message: " + errorMessage);
   }
}

AdQualitySdkInit adQualitySdkInit = new AdQualitySdkInit();
ISAdQualityConfig adQualityConfig = new ISAdQualityConfig {
   AdQualityInitCallback = adQualitySdkInit
};

IronSourceAdQuality.Initialize(appKey, adQualityConfig);

Note: Ad Quality SDK를 초기화하는 데 걸리는 시간은 앱에 연동된 광고 네트워크 SDK의 수에 따라 다릅니다. 네트워크 연결 문제로 인해 지연이 발생할 수도 있습니다. 평균적으로 초기화에는 3~4초가 소요됩니다.

5단계(선택사항): 노출 수준 광고 수익을 Ad Quality SDK에 보고하기

Note: 레벨플레이를 사용하는 경우, 다음 기능을 사용하려면 먼저 Ad Quality를 초기화해야 합니다.
Note: 이 기능은 전체 화면 광고만 지원합니다. 레벨플레이, MAX, DT FairBid의 경우 이 데이터는 자동으로 수집됩니다

Ad Quality SDK 7.2.0 이상 버전은 노출 수준 광고 수익 보고를 지원합니다:

Ad Quality SDK에서 노출 수준 광고 수익을 보고하려면 아래 코드 스니펫을 SDK 연동에 추가해 주세요.

중요합니다! sendCustomMediationRevenue 메서드는 광고가 표시될 때 호출해야 하며, 광고 라이프사이클 외부에서 호출하면 아무런 효과가 없습니다

ISAdQualityCustomMediationRevenue customMediationRevenue = new ISAdQualityCustomMediationRevenue();
customMediationRevenue.MediationNetwork = ISAdQualityMediationNetwork.SELF_MEDIATED;
customMediationRevenue.AdType = ISAdQualityAdType.REWARDED_VIDEO;
customMediationRevenue.Revenue = 1.2;
IronSourceAdQuality.SendCustomMediationRevenue(customMediationRevenue);

AdMob 미디에이션을 사용하는 경우 다음 단계를 따라서 구현합니다:

  1. AdMob 계정 관리자에게 AdMob 노출 수준 LTV(iLTV)를 활성화하도록 요청하세요
  2. Android 또는 iOS용 GMA SDK 8.12.0 이상 버전을 사용하고 해당 버전이 iLTV를 지원하는지 확인하세요
  3. Ad Quality SDK 연동에 다음 코드 스니펫을 추가하세요:

RewardedAd rewardedAd;
public void HandleRewardedAdLoaded(object sender, EventArgs args)
{
    this.rewardedAd = args.rewardedAd;
}
private void HandleAdPaidEvent(object sender, AdValueEventArgs args)
{
   AdValue impressionData = args.AdValue;
   ISAdQualityCustomMediationRevenue customMediationRevenue = new ISAdQualityCustomMediationRevenue();
   customMediationRevenue.MediationNetwork = ISAdQualityMediationNetwork.ADMOB;
   customMediationRevenue.AdType = ISAdQualityAdType.REWARDED_VIDEO;
   customMediationRevenue.Revenue = impressionData.Value/1000000f;
   IronSourceAdQuality.SendCustomMediationRevenue(customMediationRevenue);
}