Skip to main content

시작하기 전에

프로젝트에 Daro SDK를 통합하기 전에 필요한 사항들을 확인하세요.

요구사항

  • 안드로이드 minSdkVersion : 23
app-ads.txt 파일 설정(링크)이 잘 되었는지 다시 한 번 확인해주세요.
minSdk 26 미만일 경우 Desugaring 설정을 필요로 합니다.
android {
    ...

    compileOptions {
        isCoreLibraryDesugaringEnabled = true
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }

    ...
}

...

dependencies {
    ...

    coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.4")

    ...
}

앱 설정하기

1

프로젝트 단위 빌드 설정

  1. settings.gradle 파일에 maven repository 들을 추가합니다.
  • Non-Reward
  • Reward
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        ...
        maven { url = uri("https://artifact.bytedance.com/repository/pangle") }
        maven { url = uri("https://verve.jfrog.io/artifactory/verve-gradle-release") }
        maven { url = uri("https://cboost.jfrog.io/artifactory/chartboost-ads/") }
        maven { url = uri("https://repo.premiumads.net/artifactory/mobile-ads-sdk/") }
        maven { url = uri("https://repo.pubmatic.com/artifactory/public-repos") }
        maven { url = uri("https://s3.amazonaws.com/smaato-sdk-releases/") }
        maven { url = uri("https://android-sdk.is.com/") }
        maven { url = uri("https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea") }
    }
}
2

build.gradle(root)에 daro 플러그인 추가

  1. build.gradle(root) 파일에 daro 관련 플러그인을 추가합니다.
Latest version
  • daro-plugin :
  • Non-Reward
  • Reward
buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath("so.daro:daro-plugin:{version}")
    }
}
3

Daro SDK 추가

  1. Daro SDK를 추가합니다.
  • Non-Reward
  • Reward
Latest version
  • daro-core :
  • daro-a :
  • daro-compose-util :
dependencies {
    ...
    implementation("so.daro:daro-core:{version}")
    implementation("so.daro:daro-a:{version}")
    
    implementation("so.daro:daro-compose-util:{version}") // Compose-Only
    ...
}
4

android-daro-key.txt 파일 추가

  1. android-daro-key.txt 파일을 추가합니다.
  • 일반
  • flavor/buildType 별 분기가 필요한 경우
app/
└── android-daro-key.txt
android-daro-key.txt는 DARO 대시보드에서 다운받을 수 있습니다.
5

daroAppKey 설정

  1. daroAppKey 를 설정합니다.
  • 일반
  • flavor/buildType 별 분기가 필요한 경우
daroAppKey는 DARO 대시보드에서 확인할 수 있습니다.daroAppKey
6

build.gradle(app)에 daro plugin 적용

  1. build.gradle(app)에 daro plugin을 적용합니다.
  • Non-Reward
  • Reward
plugins {
    ...
    id("so.daro.a")
    ...
}
7

proguard rule 추가히기

  1. proguard rule을 추가합니다.
  • Non-Reward
  • Reward
-keep class com.bytedance.sdk.** { *; }

-keepattributes Signature
-keep class net.pubnative.** { *; }
-keep class com.iab.omid.library.pubnativenet.** { *; }

-keep class com.amazon.** { *; }
-keep public class com.google.android.gms.ads.** {
    public *;
}
-keep class com.iabtcf.** {*;}

-keep public class com.smaato.sdk.** { *; }
    -keep public interface com.smaato.sdk.** { *; }

-keepclassmembers class * implements android.os.Parcelable {
    public static final android.os.Parcelable$Creator *;
}

-keep class com.ironsource.adapters.** { *; }

-dontwarn com.ironsource.**
-dontwarn com.ironsource.adapters.**
-keepclassmembers class com.ironsource.** { public *; }
-keep public class com.ironsource.**
-keep class com.ironsource.adapters.** { *;
}

-keepclassmembers class com.applovin.sdk.AppLovinSdk {
    static *;
}
-keep public interface com.applovin.sdk** {*; }
-keep public interface com.applovin.adview** {*; }
-keep public interface com.applovin.mediation** {*; }
-keep public interface com.applovin.communicator** {*; }

-keep class androidx.localbroadcastmanager.content.LocalBroadcastManager { *;}
-keep class androidx.recyclerview.widget.RecyclerView { *;}
-keep class androidx.recyclerview.widget.RecyclerView$OnScrollListener { *;}

-keep class * extends android.app.Activity

-flattenpackagehierarchy droom.daro.a

-keep public class droom.daro.** {
    public protected *;
}
-keep interface droom.daro.** {
    public protected *;
}

-keep,allowobfuscation,allowshrinking class kotlin.coroutines.Continuation

SDK 초기화하기

  • 광고를 로드하기 전에 Daro.init()를 호출하여 광고 SDK를 초기화합니다.
    Daro.init(application)
    
    💡 빠른 SDK 초기화를 위해 앱의 첫 진입점인 Application 파일 onCreate 내에서 Daro SDK를 초기화하는 것을 권장합니다.
I