Android 또는 Amazon용 Vungle SDK 통합

시작하기 전에

Vungle SDK는 API 버전 30, Android 11까지 빌드 및 테스트되었습니다.

요구사항

  • 통합을 진행하려면 Vungle 계정이 필요하므로 아직 계정을 만들지 않은 경우 Vungle 계정을 만들고 계정에서 새 Android 또는 Amazon 앱을 생성합니다. Vungle 대시보드에서 플레이스먼트 설정 방법을 알아 보려면 퍼블리셔 대시보드 사용 문서의 앱 및 플레이스먼트 추가 섹션을 참조하십시오.
  • Android 4.0(Ice Cream Sandwich - API 버전 14 이상)
  • 아마존 OS 5.4 이상
  • 플랫폼은 Android SDK 6.5.1 이상의 AndroidX여야 합니다

SDK 다운로드

Android 또는 Amazon용 Vungle SDK를 다운로드합니다. https://publisher.vungle.com/sdk/sdks/android

참조: 샘플 앱 및 Java Doc

샘플 앱: 통합 시 제공된 샘플 앱을 참조하십시오. https://github.com/Vungle/Android-SDK

JavaDoc: https://vungle.github.io/vungle-android-sdk/javadoc

1단계. 프로젝트에 Vungle SDK 포함

Vungle SDK를 Gradle 종속성으로 통합하거나 JAR 또는 AAR 통합을 사용하여 수동으로 통합할 수 있습니다.

// API version compatibility
minSdkVersion 14
compileSdkVersion 30
targetSdkVersion 30

Gradle

프로젝트 레벨 build.gradle을(를) 열고, JCenter 세부 정보가 다음과 같은지 확인합니다.
allprojects {
  repositories {
    jcenter()
  }
}
앱에서 앱 레벨 build.gradle 파일을 열고 dependencies 섹션에 컴파일 종속성을 추가합니다.
buildscript {
  repositories {
    jcenter()
  }
}

dependencies { 
  // Vungle SDK
  implementation 'com.vungle:publisher-sdk-android:6.9.1'
 
  implementation 'androidx.core:core:1.3.2'
  implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'

  // When appcompat is being used, core and localbroadcastmanager are the dependencies
  // that is getting included
  // implementation 'androidx.appcompat:appcompat:1.2.0'

  // Recommended for SDK to be able to get Android Advertising ID
  implementation 'com.google.android.gms:play-services-basement:17.5.0'
  implementation 'com.google.android.gms:play-services-ads-identifier:17.0.0'
}

JAR

  1. Download the Vungle SDK and unzip it. From the libs folder, copy all the .jar files, and add them to your project libs folder:
    • vungle-android-sdk-6.9.1.jar
    • gson-2.8.6.jar
    • okhttp-3.12.12.jar
    • okio-1.15.0.jar
  2. 앱에서 앱 레벨 build.gradle 파일을 열고 dependencies 섹션에 기타 종속성을 추가합니다.
    dependencies {
      // Vungle SDK
      implementation files('libs/vungle-android-sdk-6.9.1.jar')
    
      // Required Third-party Dependencies
      implementation files('libs/gson-2.8.6.jar')
      implementation files('libs/okhttp-3.12.12.jar')
      implementation files('libs/okio-1.15.0.jar')
    
      implementation 'androidx.core:core:1.3.2'
      implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
    
      // When appcompat is being used, core and localbroadcastmanager are the dependencies
      // that is getting included
      // implementation 'androidx.appcompat:appcompat:1.2.0'
    
      // Recommended for SDK to be able to get Android Advertising ID
      implementation 'com.google.android.gms:play-services-basement:17.5.0'
      implementation 'com.google.android.gms:play-services-ads-identifier:17.0.0'
    }
  3. 다음 행을 추가하고 어플리케이션 클래스 이름에 어플리케이션 항목 이름을 지정하여 AndroidManifest.xml을(를) 업데이트합니다.
    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="30" />
    
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
    
    <application
        android:fullBackupContent="@xml/vungle_backup_rule"
        android:hardwareAccelerated="true"
        android:supportsRtl="true" >
        <activity
            android:name="com.vungle.warren.ui.VungleActivity"
            android:configChanges="keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize|uiMode"
            android:launchMode="singleTop"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
    
        <receiver
            android:name="com.vungle.warren.NetworkProviderReceiver"
            android:enabled="false" >
            <intent-filter>
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </receiver>
    
        <provider
            android:name="com.vungle.warren.utility.VungleProvider"
            android:authorities="${applicationId}.vungle-provider"
            android:exported="false" />
    </application>
  4. fullBackupContent 허용을 위해 Vungle 제외 규칙을 포함합니다.

AAR

  1. Download the Vungle SDK and unzip it. From the libs folder, copy SDK .aar and all .jar dependencies, and add them to your project libs folder:
    • vungle-android-sdk-6.9.1.aar
    • gson-2.8.6.jar
    • okhttp-3.12.2.jar
    • okio-1.15.0.jar
  2. 앱에서 앱 레벨 build.gradle 파일을 열고 dependencies 섹션에 기타 종속성을 추가합니다.
    dependencies {
      // Vungle SDK
      implementation files('libs/vungle-android-sdk-6.9.1.aar')
    
      // Required Third-party Dependencies
      implementation files('libs/gson-2.8.6.jar')
      implementation files('libs/okhttp-3.12.12.jar')
      implementation files('libs/okio-1.15.0.jar')
    
      implementation 'androidx.core:core:1.3.2'
      implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
    
      // When appcompat is being used, core and localbroadcastmanager are the dependencies
      // that is getting included
      // implementation 'androidx.appcompat:appcompat:1.2.0'
    
      // Recommended for SDK to be able to get Android Advertising ID
      implementation 'com.google.android.gms:play-services-basement:17.5.0'
      implementation 'com.google.android.gms:play-services-ads-identifier:17.0.0'
    }

2단계. Vungle SDK 가져오기

import com.vungle.warren.Vungle;
import com.vungle.warren.AdConfig;              // Custom ad configurations
import com.vungle.warren.InitCallback;          // Initialization callback
import com.vungle.warren.LoadAdCallback;        // Load ad callback
import com.vungle.warren.PlayAdCallback;        // Play ad callback
import com.vungle.warren.VungleNativeAd;        // MREC ad
import com.vungle.warren.Banners;               // Banner ad
import com.vungle.warren.VungleBanner;          // Banner ad
import com.vungle.warren.Vungle.Consent;        // GDPR consent
import com.vungle.warren.VungleSettings         // Minimum disk space
import com.vungle.warren.error.VungleException  // onError message

3단계. 코드 추가

SDK 초기화

init 선택 가능한 VungleSettings에 따른 init
public static void init(@NonNull final String appId,
                        @NonNull final Context context,
                        @NonNull final InitCallback callback)

초기화 메서드는 다음 매개 변수를 사용합니다.

  • Vungle 어플리케이션 ID
  • 어플리케이션 컨텍스트
  • InitCallback
    • onSuccess: SDK 초기화가 성공적으로 완료되면 알림
    • onError: SDK 초기화가 실패하면 알림
      • InitCallback이(가) null인 경우 IllegalArgumentException 발생.
    • onAutoCacheAdAvailable: 자동 캐시된 플레이스먼트에 재생 가능한 광고가 있으면 알림
  • VungleSettings (선택)
6.5.0 이상 레거시
Vungle.init(appId, getApplicationContext(), new InitCallback() {
  @Override
  public void onSuccess() {
    // SDK has successfully initialized
  }

  @Override
  public void onError(VungleException exception) {
    // SDK has failed to initialize
  }

  @Override
  public void onAutoCacheAdAvailable(String placementId) {
    // Ad has become available to play for a cache optimized placement
  }
};
오버라이딩 가능 메서드 설명
onSuccess() SDK가 성공적으로 초기화되고 광고를 로드하거나 광고를 재생할 준비가 되었을 때 호출됩니다.
onError(VungleException exception) SDK 초기화를 시도하는 동안 오류가 발생하면 호출됩니다. VungleExceptiongetLocalizedMessage 오류 메시지를 확인하고 getExceptionCode을(를) 디버깅에 사용할 수 있습니다.
onAutoCacheAdAvailable(String placementId) 캐시에 최적화된 플레이스먼트에서 광고를 재생할 수 있게 되면 호출됩니다. 퍼블리셔는 플레이스먼트 광고 로드에 설명된 대로 캐시에 최적화된 플레이스먼트를 위한 loadAd를 명시적으로 발행해야 합니다.

isInitialized 메서드를 호출하여 Vungle SDK 초기화 여부를 언제든지 확인할 수 있습니다.

public static boolean isInitialized()

광고 형식 통합

앱에 표시하려는 각 광고 형식에 대한 SDK 통합을 완료합니다. 각 광고 형식에 대한 당사 지침을 다음에서 참조하십시오.

추가 광고 맞춤 설정

당사 고급 설정 문서의 지침에 따라 GDPR, CCPA 구현 및 기타 여러 설정과 같은 추가 구성 옵션으로 앱 통합을 상세하게 조정하십시오.

 

Questions?

Need further assistance, feel free to reach out to us, we’re here to help!

도움이 되었습니까?