/
Push 타입 (2.0): Getting Started

Push 타입 (2.0): Getting Started

Android를 위한 BuzzAdPush SDK 개발 시작하기

BuzzAdPush SDK를 안드로이드에 연동하기 위한 문서입니다. BuzzAdPush는 BuzzAd의 광고 상품 중 하나로 Push를 광고 지면으로 이용해 광고를 유저에게 보여줍니다. 유저가 잠금화면, Pop 등 앱의 별도 서비스를 사용할 때만 Push를 enable하도록 하는 것을 권장합니다.

SDK를 앱에 연동하기 전, 아래 사항을 먼저 준비해야 합니다.

  • Buzzvil의 BD 매니저를 통해 전달받은 app_id와 unit_id

  • Buzzvil 서버로부터 포인트 적립 요청을 받을 수 있는 매체사 API 서버 - 포인트 postback API 연동문서

    • Postback 수신 url 세팅 후 Buzzvil BD 매니저에게 전달

  • 테스트/라이브 하기 전 유저에게 제공할 Push를 받을 시간 옵션과 각 시간별 Push에 노출할 메세지를 BD 매니저에게 전달해주셔야 합니다. 따로 설정하지 않을 시 디폴트 시간 옵션과 메세지가 노출됩니다.

Prerequisite

  • Android Studio 3.2 혹은 그 이상

  • minSdkVersion 15 혹은 그 이상

  • compileSdkVersion 29 혹은 그 이상



Index


Step 1: 설치

BuzzAdPush Sdk는 maven 를 통해 다운받으실 수 있습니다. 다음 코드를 build.gradle 에 추가해 주십시오.

build.gradle: Project

allprojects { repositories { google() jcenter() maven { url "https://dl.buzzvil.com/public/maven" } } }

 

build.gradle: app Module

dependencies { implementation "com.buzzvil:buzzad-benefit-push:2.9.+" implementation 'com.android.support:multidex:1.0.3' }

BuzzAdPush는 BuzzAdBenefit SDK에 통합되어 배포되고 있습니다.

 

build.gradle: app Module - compileOptions 해결

android { ... compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } }

 

Step 2: BuzzAdPush SDK 초기화

BuzzAdPop은 BuzzAdBenefit SDK에 통합되어 관리되고 있기 때문에 Pop을 초기화 하기 위해서 BuzzAdBenefit을 초기화 해야 합니다. 초기화 코드는 앱 실행시 한번만 실행하면 됩니다. 아래 코드는 init() 함수를 Application에서 호출해 주는 코드의 예시입니다.

  • APP_ID: 전달받은 app id 로 변경

  • UNIT_ID_PUSH: 전달받은 unit id 로 변경

 

Step 3: 로그인

유저가 매체사 앱에 로그인한 시점에 아래와 같이 UserProfile 을 세팅합니다. 설정값 수정 시, 기존 user profile 값을 호출하여 수정 가능합니다.

주의 : User ID와 타게팅 정보 (성별, 연령)는 원활한 서비스 운영을 위해 제공해야 할 필수 항목입니다. 해당 값을 입력하는 setUserProfile 함수가 호출되지 않으면 광고가 제공되지 않습니다.

  • userId : 매체사 서비스 유저를 unique 하게 구분할 수 있는 식별값

    • 매체사 서비스에서 유니크하다고 판단되는 유저에 대하여, userId 값이 복수 개 연동되거나 변경될 가능성이 있을 경우 사전에 BD 매니저와 논의해야 합니다.

    • 예: 매체사 앱 삭제 후 재설치 시 userId 값이 변경되는 경우

  • gender

    • UserProfile.Gender.MALE: 남성

    • UserProfile.Gender.FEMALE: 여성

  • birthYear: 출생년도

로그아웃 시에는 UserProfile을 null로 설정해 주는 작업이 필요합니다.

 

Step 4. Register/Unregister

 

그림 1. register 설명 다이얼로그 그림 2. register(시간설정) 다이얼로그

 

Register

Push 를 활성화 하기 위해서buzzAdPush.registerWithDialog() or buzzAdPush.register() 를 호출합니다. 한번 활성화 하면 설정된 시간에 광고 Notification 을 보여주게 됩니다.

  • FeedConfig 설정: FeedConfig 를 설정합니다.

    • feedToolbarHolderClass: 피드의 타이틀을 설정합니다. 자세한 내용은 toolbar customize를 확인해주세요.

  • RewardNotificationConfig 설정: Reward 를 받았을 때 보여주는 Notification 의 Config 를 설정합니다.

  • NotificationConfig 설정: Push 의 Notification 관련 config 를 설정합니다.

    • .putExtra(FeedActivity.EXTRA_CONFIG, feedConfig) 위에서 생성한 FeedConfig 를 설정합니다.

NotificationConfig 는 아래와 같이 NotificationWorker 를 상속받은 CustomNotificationWorker 클래스의 getNotificationConfig 함수를 오버라이딩 해서 설정합니다.

 

그림 1. register 설명 다이얼로그 그림 2. register(시간설정) 다이얼로그

 

1) Register with Description

Push 활성화 설명 다이얼로그(그림 1)가 먼저 보이고, 그 후에 Push Register(시간설정) 다이얼로그(그림 2)가 뜹니다.

 

2) Register without Description

Push 설명 다이얼로그(그림 1)가 뜨지 않고, 바로 Push Register(시간설정) 다이얼로그(그림 2)가 뜹니다.

 

Unregister

 

 

 

 

 

 

 

그림 3. unregister 다이얼로그

 

Push 를 비활성화 하기 위해서buzzAdPush.unregisterWithDialog() 를 호출합니다.

 

1) Unregister with Description

Push unregister 다이얼로그(그림 3)가 보이고 구독 취소를 누르면 unregister 합니다.

 

Register 상태 확인

Push 가 활성화 상태인지 확인하기 위해 boolean isRegistered(Context context) 를 호출합니다.

 

Step5. Restart receiver 등록

단말을 껐다켜거나 앱 업데이트 시, 다시 Push sdk 가 동작 할 수 있도록하는 BroadcastReciever 입니다

  • RestartReceiver class 생성

  • Manifest 등록

 

Step 6. (Optional) CustomFeedAdsAdapter 사용: reward 적립 notification 사용 (NativeAdView.OnNativeAdEventListener 등록)

 

 

 

 

 

 

 

 

 

그림 4. reward 적립 notification

 

  • Application class 에 RewardNotification 을 BuzzAdPush 에서 가져오기 위해 static 함수를 등록합니다

  • DefaultAdsAdapter 를 상속받는 CustomFeedAdsAdapter 생성하고 onRewarded 를 아래와 같이 처리

  • CustomNotificationWorker.getNotificationConfig 를 아래와 같이 변경

Customize

Customize 페이지 에서 Customize 하는 방법을 소개합니다.

Related content

(Android v3.0.x) 2. Feed 마이그레이션 가이드
(Android v3.0.x) 2. Feed 마이그레이션 가이드
Read with this
(ver 2.31.x) 6.5.2. 고급 설정
(ver 2.31.x) 6.5.2. 고급 설정
More like this
Push 타입 (2.0)
Push 타입 (2.0)
More like this
(Android v3.0.x) 8. Push 마이그레이션 가이드
(Android v3.0.x) 8. Push 마이그레이션 가이드
More like this
Pop 타입 (2.0): Getting Started
Pop 타입 (2.0): Getting Started
More like this
(ver 2.31.x) 6.1. 개요
(ver 2.31.x) 6.1. 개요
More like this