...
BuzzAdPush SDK를 안드로이드에 연동하기 위한 문서입니다.
BuzzAdPush는 BuzzAd의 광고 상품 중 하나로 Notification 을 통해 유저가 Feed 지면에 진입할 수 있도록 도와줍니다.
Push를 광고 지면으로 이용해 광고를 유저에게 보여줍니다. 유저가 잠금화면, Pop 등 앱의 별도 서비스를 사용할 때만 Push를 enable하도록 하는 것을 권장합니다.
SDK를 앱에 연동하기 전, 아래 사항을 먼저 준비해야 합니다.
...
Android Studio 3.2 혹은 그 이상
minSdkVersion
16 15 혹은 그 이상compileSdkVersion
30 29 혹은 그 이상
Index
Table of Contents |
---|
...
Code Block |
---|
allprojects { repositories { google() jcenter() maven { url "https://dl.bintraybuzzvil.com/buzzvilpublic/maven/" } } } |
build.gradle
: app Module
Code Block |
---|
dependencies { implementation "com.buzzvil:buzzad-benefit-push:2.199.+" implementation 'com.android.support:multidex:1.0.3' } |
Info |
---|
BuzzAdPush는 BuzzAdBenefit SDK에 통합되어 배포되고 있습니다. |
...
Code Block |
---|
android { ... compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } … |
Step 2:
...
BuzzAdPush SDK 초기화
BuzzAdPop은 BuzzAdBenefit SDK에 통합되어 관리되고 있기 때문에 Push을 Pop을 초기화 하기 위해서 BuzzAdBenefit을 초기화 해야 합니다. 초기화 코드는 앱 실행시 한번만 실행하면 됩니다. 아래 코드는 init()
함수를 Application에서 호출해 주는 코드의 예시입니다.
RestartReceiver 에서도 사용하므로 Application 클래스에 static 함수로 구현합니다.
PushDialogConfig
설정: PushDialog 관련 config 입니다.colorConfirm
: 확인버튼 색상 color resource idcolorCancel
: 취소버튼 색상 color resource idimageRegisterLogo
: register dialog 로고 이미지 drawable resource idimageUnregisterLogo
: unregister dialog 로고 이미지 drawable resource id
...
APP_ID: 전달받은 app id 로 변경
UNIT_ID_PUSH: 전달받은 unit id 로 변경
Code Block |
---|
package ... import ... import com.buzzvil.buzzad.benefit.BuzzAdBenefit; import com.buzzvil.buzzad.benefit.BuzzAdBenefitConfig; public class App extends MultiDexApplication { public static final String @OverrideAPP_ID = "APP_ID"; public void onCreate()public {static final String UNIT_ID_PUSH = "UNIT_ID_PUSH"; super.onCreate(); @Override public void onCreate() { super.onCreate(); BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(thisAPP_ID) .build(); BuzzAdBenefit.init(this, buzzAdBenefitConfig); } public static PushDialogConfig getPushDialogConfig() { return new PushDialogConfig.Builder() .colorConfirm(R.color.colorAccent) .colorCancel(R.color.colorPrimary) .imageRegisterLogo(R.drawable.benefit_push_dialog_image_logo) .imageUnregisterLogo(R.drawable.benefit_push_dialog_image_logo) .build(); } } |
Step 4. BuzzAdPush SDK 초기화
UNIT_ID_PUSH
BuzzAdPush 초기화
unitId
: Push unit idnotificationWorkerClass
:CustomNotificationWorker
pushDialogConfig
: PushDialog 관련 config
Code Block | ||
---|---|---|
| ||
String UNIT_ID_PUSH = "UNIT_ID_PUSH"; BuzzAdPush buzzAdPush = new BuzzAdPush( UNIT_ID_PUSH, CustomNotificationWorker.class, App.getPushDialogConfig() );} |
Step 3: 로그인
유저가 매체사 앱에 로그인한 시점에 아래와 같이 UserProfile
을 세팅합니다. 설정값 수정 시, 기존 user profile 값을 호출하여 수정 가능합니다.
주의 : User ID와 타게팅 정보 (성별, 연령)는 원활한 서비스 운영을 위해 제공해야 할 필수 항목입니다. 해당 값을 입력하는 setUserProfile 함수가 호출되지 않으면 광고가 제공되지 않습니다.
userId : 매체사 서비스 유저를 unique 하게 구분할 수 있는 식별값
매체사 서비스에서 유니크하다고 판단되는 유저에 대하여, userId 값이 복수 개 연동되거나 변경될 가능성이 있을 경우 사전에 BD 매니저와 논의해야 합니다.
예: 매체사 앱 삭제 후 재설치 시 userId 값이 변경되는 경우
gender
UserProfile.Gender.MALE
: 남성UserProfile.Gender.FEMALE
: 여성
birthYear: 출생년도
Code Block |
---|
final UserProfile.Builder builder = new UserProfile.Builder(BuzzAdBenefit.getUserProfile());
final UserProfile userProfile = builder
.userId("Your_Service_User_ID")
.gender(UserProfile.Gender.MALE)
.birthYear(1985)
.build();
BuzzAdBenefit.setUserProfile(userProfile); |
로그아웃 시에는 UserProfile을 null로 설정해 주는 작업이 필요합니다.
Code Block |
---|
BuzzAdBenefit.setUserProfile(null); |
Step 4. Register/Unregister
그림 1. register 설명 다이얼로그 그림 2. register(시간설정) 다이얼로그
Register
Push 를 활성화 하기 위해서buzzAdPush.registerWithDialog() or buzzAdPush.register()
를 호출합니다. 한번 활성화 하면 설정된 시간에 광고 Notification 을 보여주게 됩니다.
...