Skip to content
:docs

Getting started

Complete these settings before integrating placements provided by the BuzzAd Android SDK.

Requirements

  • Android 4.1 Jelly Bean (API level 16) or later.
  • Android Studio 3.2 or later.
  • Gradle 4.0.1 or later.
  • compileSdkVersion 33 or later
  • AndroidX
  • JDK 1.11

Obtain integration IDs

You need an App ID for your app and a Unit ID for each ad placement to integrate the BuzzAd Android SDK. Contact your Buzzvil representative to obtain them.

ID typeDescription
App IDA unique identifier assigned to each app integrated with the BuzzAd Android SDK.
Unit IDA unique identifier assigned to each placement created through the BuzzAd Android SDK.

Integrate a reward server

Buzzvil offers rewarded ads, which grant points to users, and non-rewarded ads, which do not.

  • Non-rewarded ads: No points are awarded for participation, so a points processing server is not required.
  • Rewarded ads: Users receive points for participation, so you need a server to process reward requests from the client.

If you have your own server that can process reward requests for rewarded ads, integrate it by following the postback integration guide.

Install the SDK

Follow these steps to install the BuzzAd Android SDK.

  1. Configure the BuzzAd SDK repository in the project-level build.gradle file.
build.gradle · Java
// 프로젝트 레벨의 build.gradle

allprojects {
    repositories {
        maven { url "https://dl.buzzvil.com/public/maven" } // 버즈빌 저장소
    }
}

Configure the BuzzAd SDK repository in Android Studio Bumblebee or later

Method 1. Add maven { ... } to settings.gradle.

settings.gradle · Java
// settings.gradle

pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url "https://dl.buzzvil.com/public/maven" } // 버즈빌 저장소
    }
}

Method 2. Remove the dependencyResolutionManagement { repositories {...}} block from the settings.gradle file above, then add the dependencies in the project-level build.gralde.

build.gradle · Java
// 프로젝트 레벨의 build.gradle

allprojects {
    repositories {
        maven { url "https://dl.buzzvil.com/public/maven" } // 버즈빌 저장소
    }
}
  1. Add the BuzzAd SDK library to the module-level build.gradle file.
build.gradle · Code
// 모듈 레벨의 build.gradle

dependencies {
    implementation ("com.buzzvil:buzzad-benefit:3.54.+") // BuzzAd SDK 라이브러리
}
  1. Update compileSdkVersion and targetSdkVersion to 33 in the module-level build.gradle file.
build.gradle · Java
// 모듈 레벨의 build.gradle 

android {
    compileSdkVersion 33

    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 33
    }
}

Initialize the SDK

After installing the BuzzAd Android SDK, initialize it with the required information, including the App ID and user profile.

Add the App ID

In AndroidManifest.xml, replace 000000000000 in app-pub-000000000000 with the App ID issued by your Buzzvil representative.

XML
<manifest>
    <application>
    
        
        <meta-data  
          android:name="com.buzzvil.APP_KEY"  
          android:value="app-pub-{YOUR_APP_ID}" />
        
    </application>
</manifest>

Collect app crash information

Buzzvil uses Sentry to collect SDK crash reports and improve the reliability of the BuzzAd Android SDK and your app. Reports include stack traces containing the com.buzzvil package path, the SDK version, app information and device information excluding unique identifiers. Crash reporting is enabled automatically without additional steps if your app does not use Sentry, or uses Sentry without automatic initialization.

If your app already uses Sentry with automatic initialization through ContentProvider, add tools:node="replace" to AndroidManifest.xml.

XML
<manifest>
    <application>
    
        <meta-data
           android:name="io.sentry.dsn"
           android:value="YOUR DSN" //퍼블리셔 DSN
           tools:node="replace" /> 
                  
    </application>
</manifest>

Initialize the BuzzAd SDK

Call BuzzAdBenefit.init() in onCreate() of Application to initialize the BuzzAd Android SDK.

Java
public class App extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
                
        // BuzzAdBenefit 초기화
        final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(getApplicationContext())
                .build();
        BuzzAdBenefit.init(getApplicationContext(), buzzAdBenefitConfig);
    }
}

Configure your app in AndroidManifest.xml.

XML
<manifest>
    <application
        android:name=".App">
    
        ...
                  
    </application>
</manifest>

Register a user profile

Register a user profile before requesting ads. The profile fields are listed below.

❗️❗️❗️  Important  ❗️❗️❗️
Although gender and birth year are marked as recommended, targeted ads cannot be served without them. Most Buzzvil ads are targeted, so provide these fields to receive ads reliably.

RequirementProfile fieldDescription
RequireduserIdA unique, non-identifying ID for each user. Do not use a login ID or email address. It must remain stable throughout service use and is required for ad allocation.
⚠️ Caution ❗️❗️❗️
If the ID changes after reinstalling the app or cannot remain stable for another reason, action-based ads cannot be served because of the risk of abuse. Contact your Buzzvil business representative if user identifiers can change.
RecommendedgenderThe user's gender.
  • Male: UserProfile.Gender.MALE
  • Female: UserProfile.Gender.FEMALE
RecommendedbirthYearThe user's birth year.

The following example registers a user profile with the SDK. You can also remove a registered profile.

Java
// 사용자 정보를 등록하는 코드입니다.
final UserProfile.Builder builder = new UserProfile.Builder(BuzzAdBenefit.getUserProfile());
final UserProfile userProfile = builder
        .userId("USER_ID")
        .gender(UserProfile.Gender.MALE) //남성 사용자
        .birthYear(YYYY)
        .build();
BuzzAdBenefit.setUserProfile(userProfile);

// SDK에 등록한 사용자 프로필을 삭제하는 코드입니다.
// BuzzAdBenefit.setUserProfile(null);

Sample code

See the GitHub sample code for implementation examples.

Frequently asked questions

QuestionAnswer
Only the BuzzAd Android SDK UI uses dark mode, which looks inconsistent.You can disable the app's dark theme. See Disable dark theme in your app.
I want to change the BuzzAd Android SDK UI across all placements.Use a theme to change the SDK's overall colors and icons. See Change the global theme.
Which ad libraries does the BuzzAd Android SDK use?See Ad libraries used by BuzzAd.
Why do action-based ads need an inquiry button?An inquiry feature is required when serving action-based ads to support reliable service operations. See Add user inquiries for action-based ads.
I want ads to open in a WebView.Use a custom launcher to open ad landing pages in an in-app browser. See Use a custom in-app browser.
I want to change video ad playback options.See Change video ad playback conditions.
I want to identify the ad type in Feed or Native.See Check the ad type.