Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

버즈애드 오퍼월을 안드로이드 어플리케이션에 연동하기 위한 가이드 문서입니다. 유저가 여러 액션형 광고에 참여할 수 있는 오퍼월 지면을 손쉽게 연동할 수 있습니다.

Expand
title예시 화면

예시 화면은 아래와 같습니다.

원하는 테마 컬러의 hex code를 버즈빌 매니저에게 전달주시면 적용 가능합니다. 색상 적용 범위는 아래와 같습니다.

  • 상단 툴바 색상

  • 포인트 금액 텍스트

  • 광고 타입 아이콘

Requirements

항목

내용

비고

1

안드로이드 지원 버전

Android 4.2(API Level 17) 이상

2

Google Play의 대상 API 레벨 요구사항을 충촉하기

Offerwall SDK의 대응: 1.1.0 버전 이상에서 

  • targetSdkVersion28 사용

  • compileSdkVersion28 이상 사용

정책 적용 시점

  • 신규 앱: 
    2019년 8월 1일

  • 기존 앱: 
    2019년 11월 1일

3

app_key

SDK 연동 및 샘플 어플리케이션 실행을 위해 필요

버즈빌 BD 매니저로부터 발급

Installation

Note

하위 버전에서 1.1.0 버전 이상으로 업데이트 시, buzzad.jar을 다운받아 설치하셨을 경우, 라이브러리에 존재하는 buzzad-1.0.x.jar 파일을 삭제후 진행 부탁드립니다.

...

Code Block
languagegroovy
-keep class com.buzzvil.buzzad.sdk.** {*;}
-keep interface com.buzzvil.buzzad.sdk.** {*;}

-keep class com.google.android.gms.common.GooglePlayServicesUtil {*;}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient {*;}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info {*;}

Call Methods

항목

코드 & 호출 위치

내용

초기화

Status
colourRed
title필수

BuzzAd.init(String appKey, Context context)

  • 오퍼월을 보여주려는 액티비티의 onCreate에서 호출

Info

appKey는 퍼블리셔 어드민 페이지에 로그인하여 확인 가능

오퍼월 액티비티 호출

Status
colourRed
title필수

View 단위 연동은 아래 확인

BuzzAd.showOfferWall(Activity activity, String title, String userId)

Note

반드시 BuzzAd.init() 을 호출한 이후에만 오퍼월 호출이 가능합니다.

Note

앱 재설치 또는 일정 주기에 따라 userId 가 변화할 경우, 반드시 BD 매니저와 사전 논의 필요

UserProfile 객체 리턴

Status
colourRed
title필수

BuzzAd.getUserProfile()

Note

반드시 BuzzAd.init() 을 호출한 이후에만 이 메소드를 이용해서 UserProfile 객체를 리턴할 수 있습니다.

  • 성별, 나이별 타게팅 정보를 가진 광고를 유저에게 보여주려 할 때 사용

  • 리턴된 객체에 아래에 기술된 메소드로 유저의 성별, 나이 정보를 설정할 수 있습니다.

Warning

타게팅 정보는 원활한 서비스 운영을 위해 제공해야 할 필수 항목입니다.

유저 연령 설정

Status
colourRed
title필수

setBirthYear(int birthYear)

유저의 출생 년도를 4자리의 숫자로 입력하여 나이를 설정합니다. (예: 1988)

유저 성별 설정

Status
colourRed
title필수

setGender(String gender)

다음과 같이 미리 정의된 String 형식에 맞춰 성별을 적용해야 합니다.

  • UserProfile.USER_GENDER_MALE : 남성인 경우

  • UserProfile.USER_GENDER_FEMALE : 여성인 경우

Expand
titleView 단위로 오퍼월 지면을 노출하고자 하는 경우

퍼블리셔 앱 내에서 여러 오퍼월을 연동하여, 하나의 액티비티 내에서 버즈빌 오퍼월을 View 단위로 연동하고자 하는 경우
위 “오퍼월 액티비티 호출” 단계 대신 아래 함수를 호출합니다.

Code Block
languagejava
    /**
    * get offerwall view
    * @param activity current context
    * @param userId user id for identifying user on publisher side
    */
   public static OfferwallView getOfferwallView(Activity activity, String userId) {
       return new OfferwallView(activity, APP_KEY, userId);
   }

Sample Code

Code Block
languagejava
public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /**
         * Initialize BuzzAd.
         * BuzzAd.init have to be called prior to other methods.
         * app_key : Unique key value for publisher. Please find it on your BuzzAd dashboard.
         * this : Context
         */
        BuzzAd.init("app_key", this);

        /**
         * Set User's profile(Optional)
         * BuzzAd.getUserProfile have to be called after BuzzAd.init is called.
         */
        UserProfile userProfile = BuzzAd.getUserProfile();

        userProfile.setBirthYear(1993);
        userProfile.setGender(UserProfile.USER_GENDER_FEMALE);

        findViewById(R.id.open_offerwall).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                /**
                 * Show offer wall.
                 * MainActivity.this : Current activity
                 * Get Points : Header title on offer wall
                 * publisher_user_id : Unique user id for publisher
                 */
                BuzzAd.showOfferWall(MainActivity.this, "Get Points", "publisher_user_id");
            }
        });
    }
}

포인트 적립 포스트백 API 연동

  • 버즈애드에서 포인트 적립이 발생했을 때 버즈애드에서 직접 매체사 유저들에게 포인트를 지급하는 것이 아닙니다. 버즈애드 서버에서 매체사 서버로 포인트 적립 요청을 보낼 뿐이고, 실제 지급은 매체사 서버에서 처리합니다.

...