Vungle広告の導入 - united-adstir/AdStir-Integration-Guide-Android GitHub Wiki

対応OS

Vungleはadstir SDK 2.12.0以降をお使いの場合はAndroid 4.4以上の端末に配信されます。 adstir SDK 2.12.0未満をお使いの場合はAndroid 4.1以上の端末に配信されます。

* Vungle SDKは2.13.0以降にはバンドルされません。

対応SDKの準備

バンドル版の入手は、担当またはお問い合わせフォームよりご連絡ください。

プロジェクトへSDKの追加

初期設定でbuild.gradleへ記述してSDKを追加した場合は1.で、手動でSDKを追加した場合は2.でプロジェクトへSDKを追加します。

1. build.gradleへ記述してSDKを追加した場合

アプリケーションのモジュールディレクトリにあるbuild.gradleを開き、repositoriesセクションを追加し、dependenciesセクションへ以下のように追記します。 バージョンは変更履歴よりご選択ください。

apply plugin: 'com.android.application'
    ...

    repositories {
        jcenter()
        maven { url 'http://cdnp.ad-stir.com/m2' }
    }
    dependencies {
        implementation 'com.google.android.gms:play-services-ads:x.x.x'

        // 利用するadstirのSDKバージョンを設定します
        def adstir_version = "x.x.x"
        implementation "com.ad-stir.webviewsdk:adstir-webviewsdk:${adstir_version}"
        implementation "com.ad-stir.mediationadapter:adstir-mediationadapter-vungle:${adstir_version}"
    }

2. 手動でSDKを追加した場合

  1. File -> New -> New Module -> Import .JAR/.AAR Package より以下のファイルを追加します。
    • vungle-android-sdk-x.x.x.jar
    • VNG-moat-mobile-app-kit-x.x.x.jar
    • cat-x.x.x.jar
    • conerter-gson-x.x.jar
    • fetch-x.x.x.jar
    • gson-x.x.jar
    • logging-interceptor-x.x.x.jar
    • okhttp-x.x.x.jar
    • okio-x.x.x.jar
    • retrofit-x.x.x.jar
    • androidwebviewmediation-adapter-vungle.aar
  2. File -> Project Structure -> app -> Dependencies より以下のファイルを追加します。
    • vungle-android-sdk-x.x.x
    • VNG-moat-mobile-app-kit-x.x.x
    • cat-x.x.x
    • conerter-gson-x.x
    • fetch-x.x.x
    • gson-x.x
    • logging-interceptor-x.x.x
    • okhttp-x.x.x
    • okio-x.x.x
    • retrofit-x.x.x
    • androidwebviewmediation-adapter-vungle

ProGuardの設定

ProGuardを使用しているアプリにはproguard-rules.proに、下記の内容を追加してください。
この記述が無い場合、adstirの機能を正常に利用することができません。

# Vungle
-keep class com.vungle.warren.** { *; }

# Evernote
-dontwarn com.evernote.android.job.gcm.**
-dontwarn com.evernote.android.job.GcmAvailableHelper

-dontwarn com.google.android.gms.ads.identifier.**

-keep public class com.evernote.android.job.v21.PlatformJobService
-keep public class com.evernote.android.job.v14.PlatformAlarmService
-keep public class com.evernote.android.job.v14.PlatformAlarmReceiver
-keep public class com.evernote.android.job.JobBootReceiver
-keep public class com.evernote.android.job.JobRescheduleService

-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
-keep class com.google.android.gms.internal.** { *; }

# Moat SDK
-keep class com.moat.** { *; }
-dontwarn com.moat.**

# Retrofit
-dontwarn okio.**
-dontwarn retrofit2.Platform$Java8