BuzzAd-Benefit Unity 연동 가이드
본 연동 가이드는 BuzzAd-Benefit SDK를 Unity에서 간단하게 연동하기 위해 작성되었습니다. Native Ad를 제외한 다른 지면을 간단하게 연동 할 수 있으며, 현재는 커스터마이즈를 제외한 기본적인 연동 요소를 제공합니다.
Index
Installation
Android - gradle 을 사용하여 SDK 연동
Case 1) Unity에서 Asset/Plugins/Android/
에 mainTemplate.gradle
파일을 생성합니다.
이미 다른 .gradle
을 사용하고 있다면, Case 2)를 적용해야 합니다.
buildscript {
repositories {
mavenCentral()
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.0'
**BUILD_SCRIPT_DEPS**}
}
allprojects {
repositories {
mavenCentral()
google()
jcenter()
maven {
url "https://dl.buzzvil.com/public/maven"
}
flatDir {
dirs 'libs'
}
}
}
apply plugin: 'com.android.application'
**APPLY_PLUGINS**
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation ("com.buzzvil:buzzad-benefit:1.6.8")
**DEPS**}
android {
compileSdkVersion **APIVERSION**
buildToolsVersion '**BUILDTOOLS**'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
minSdkVersion **MINSDKVERSION**
targetSdkVersion **TARGETSDKVERSION**
applicationId '**APPLICATIONID**'
ndk {
abiFilters **ABIFILTERS**
}
versionCode **VERSIONCODE**
versionName '**VERSIONNAME**'
}
lintOptions {
abortOnError false
}
aaptOptions {
noCompress = ['.unity3d', '.ress', '.resource', '.obb'**STREAMING_ASSETS**]
}**SIGN**
buildTypes {
debug {
minifyEnabled **MINIFY_DEBUG**
useProguard **PROGUARD_DEBUG**
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-unity.txt'**USER_PROGUARD**
jniDebuggable true
}
release {
minifyEnabled **MINIFY_RELEASE**
useProguard **PROGUARD_RELEASE**
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-unity.txt'**USER_PROGUARD****SIGNCONFIG**
}
}**PACKAGING_OPTIONS****SPLITS**
**BUILT_APK_LOCATION**
bundle {
language {
enableSplit = false
}
density {
enableSplit = false
}
abi {
enableSplit = true
}
}
}**SPLITS_VERSION_CODE****REPOSITORIES****SOURCE_BUILD_SETUP**
Case 2) 이미 사용중인 .gradle
이 있다면, 해당 파일에 Benefit dependency를 추가해 줍니다.
maven {
url "https://dl.buzzvil.com/public/maven"
}
dependencies {
implementation "com.buzzvil:buzzad-benefit:1.6.8"
}
iOS - Cocoapods 를 이용한 SDK 연동
Unity에서 Asset/Plugins/iOS/
에 PodFile
을 생성합니다.
# Uncomment the next line to define a global platform for your project
platform :ios, '8.0'
target 'Unity-iPhone' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for Unity-iPhone
pod 'BuzzAdBenefit', '1.2.7'
target 'Unity-iPhone Tests' do
inherit! :search_paths
# Pods for testing
end
end
BuzzAdBenefit Initialization
SDK를 사용하기 위해 initialization 코드를 호출해 주어야 합니다. 최초 광고 요청 전에만 호출하면 되지만, 앱이 시작할 때 호출하는 것을 권장합니다.
Initialization에 필요한 항목
appId
: Buzzvil의 BD 매니저를 통해 전달 받은 app IduserId
: 매체사 서비스 유저를 unique 하게 구분할 수 있는 식별값매체사 서비스에서 유니크하다고 판단되는 유저에 대하여, userId 값이 복수 개 연동되거나 변경될 가능성이 있을 경우 사전에 BD 매니저와 논의해야 합니다.
예: 매체사 앱 삭제 후 재설치 시 user Id 값이 변경되는 경우
gender
: 성별Android
UserProfile.Gender.MALE
: 남성UserProfile.Gender.FEMALE
: 여성
iOS
BABUserGenderMale
: 남성BABUserGenderFemale
: 여성
birthyear
: 출생연도
참고사항
Android
C# 코드를 생성하여, 아래 샘플코드를 호출 할 수 있습니다.
iOS
Objective-C 로 된 .mm 파일을 생성하여, SDK 코드를 호출 할 수 있습니다.
Initialization 코드
Android
iOS
제공된 샘플 코드의 예제를 통해 참고할 수 있습니다. (BenefitPlugin.mm)
타입별 광고 사용하기
Interstitial 타입 광고 사용하기
Interstitial 광고를 호출하기 위해서는 unit id
가 필요합니다. Interstitial 타입에는 Android, iOS 각각 Dialog 와 BottomSheet 두 가지 종류가 있습니다.
Android
Dialog 호출하기
BottomSheet 호출하기
iOS
Dialog & BottomSheet function 만들기
Feed 타입 광고 사용하기
Feed 타입 광고를 호출할 경우, Feed 액티비티가 실행되면서 광고를 로드하게 됩니다. 유저에게 보여줄 광고가 없는 경우, 빈 화면이 보이게 됩니다.
추후 사용 가능한 광고가 있는지 여부를 확인하는 코드는 업데이트 할 예정입니다.
Android
iOS
Pop 타입 광고 사용하기
Pop은 Floating Button UI 입니다. 사용 가능한 환경은 Android 이며, iOS 에서는 사용할 수 없습니다.
Android