(ver 3.1.x) 8. BuzzRoulette 연동

목차

개요

BuzzRoulette은 사용자에게 포인트를 무료로 적립할 수 있는 리워드 룰렛과 광고에 참여할 때마다 룰렛을 돌리기 위해 필요한 티켓을 제공하는 기능입니다. BuzzRoulette을 통해 룰렛 게임의 재미를 제공하여 티켓을 획득하기 위한 사용자의 광고 참여를 자연스럽게 유도할 수 있습니다. 이로써 광고 노출 비율을 높이고 BuzzAd SDK를 연동한 앱의 매출을 대폭 끌어올릴 수 있습니다.

BuzzRoulette은 BuzzAd Android용 SDK v3.1.x 이상부터 원격 바이너리 종속 항목으로 빌드에 포함되며, 사용자가 기능을 실행하기 위한 진입 경로는 Feed 지면에 적용됩니다. 그러므로 BuzzRoulette을 구현하려면 Feed를 연동한 상태여야 하며, BuzzRoulette을 추가한 후에는 버즈빌이 필요한 서버 구성을 설정해야 합니다. BuzzRoulette의 추가를 완료하면 Feed의 툴바 오른쪽에 기능을 실행할 수 있는 룰렛 아이콘이 생성됩니다.

사용자가 Feed에서 룰렛 아이콘을 누르면 최초 실행에 한해 개인정보 수집 동의 창이 나타나고 사용자가 동의를 누르면 룰렛 홈 화면이 나타나 룰렛 기능을 사용할 수 있습니다. 룰렛 화면에 진입한 사용자가 터치해서 티켓얻기를 눌러 광고에 참여하거나 영상보고 티켓얻기를 눌러 광고 영상을 시청하면 룰렛을 돌리기 위한 티켓을 얻을 수 있습니다.

사용자가 미동의를 누르면 룰렛 기능을 실행할 수 없습니다.

[Feed에서 룰렛 아이콘을 통해 실행되는 BuzzRoulette]

준비 사항

BuzzRoulette 추가하기

BuzzRoulette 추가하려면 다음의 절차를 따르세요.

1. 프로젝트 레벨의 build.gradle 파일에 jitpack을 추가하세요.

// 프로젝트 레벨의 build.gradle allprojects { repositories { maven { url 'https://jitpack.io' }  // jitpack 추가 } }

2. 앱 모듈의 build.gradle 파일에서 dependencies 블록에 implementation 원격 바이너리 종속 항목의 구성을 지정하세요.

buzzad-benefit 라이브러리 버전(benefitVersion)은 3.1.0 이상, buzz-roulette 라이브러리 버전(rouletteVersion)은 2.2.1 이상으로 지정해야 합니다.

// 앱 모듈의 build.gradle dependencies { implementation "com.buzzvil:buzzad-benefit:3.1.+" implementation "com.buzzvil:buzz-roulette:2.2.+" }

3. 버즈빌 담당자에게 BuzzRoulette 사용 여부를 알려 주세요.

  • BuzzRoulette 적용을 위해 필요한 사항을 버즈빌 담당자가 설정합니다.

  • 룰렛 화면 상단의 타이틀을 최대 10자까지, 적립 리워드 단위(예: 캐시, 머니 등)를 최대 5자까지 변경할 수 있습니다. 변경이 필요한 경우 버즈빌 담당자에게 연락하세요.

    [룰렛 화면 타이틀과 적립 리워드 단위]

Pangle ADN 연동하기

BuzzRoulette에 광고를 공급하려면 Pangle ADN을 연동해야 합니다.
Pangle ADN을 연동하려면 다음의 절차를 따르세요.

  1. 프로젝트 레벨의 build.gradle 파일에 Pangle ADN 저장소를 추가하세요.

    // 프로젝트 레벨의 build.gradle allprojects { repositories { maven { url 'https://artifact.bytedance.com/repository/pangle' } //pangle ADN 저장소 추가 } }
  2. 앱 모듈의 build.gradle 파일에서 dependencies 블록에  implementation 원격 바이너리 종속 항목의 구성을 지정하세요.

    // 앱 모듈의 build.gradle dependencies { implementation 'com.pangle.global:ads-sdk:3.5.0.5' }
  3. AndroidManifest.xml 파일에서 WAKE_LOCK 권한과 제공자를 추가하세요.

    <manifest> <application> <!-- 애플리케이션 태그 사이에 제공자를 추가하세요. --> <provider android:name="com.bytedance.sdk.openadsdk.multipro.TTMultiProvider" android:authorities="${applicationId}.TTMultiProvider" android:exported="false" /> </application> <!-- textureView로 재생되는 동영상 광고의 블랙스크린 발생을 방지하기 위해 추가하는 권한입니다. --> <uses-permission android:name="android.permission.WAKE_LOCK" /> </manifest>
  4. 프로젝트 레벨의 proguard-rules.pro 파일에 난독화 방지 설정을 추가하세요.

    // 프로젝트 레벨의 proguard-rules.pro 파일 -keep class com.bytedance.sdk.** { *; } -keep class com.pgl.sys.ces.* {*;}

난독화 방지 설정을 하지 않으면 Pangle ADN이 공급하는 광고를 정상적으로 게재하지 못할 수 있습니다.

Feed 툴바에 룰렛 아이콘 추가하기

Feed 지면과 Pop Feed 지면의 툴바에 룰렛 아이콘을 추가하여 사용자가 BuzzRoulette을 사용할 수 있는 엔트리 포인트를 제공할 수 있습니다. SDK에서 아이콘 생성을 위한 코드를 설정하고 버즈빌이 서버에서 BuzzRoulette 활성화 설정을 완료하면 룰렛 아이콘이 표시됩니다.

  • 룰렛 아이콘을 표시하거나 제거하려면 반드시 버즈빌의 서버 설정이 병행되어야 합니다.

  • 버즈빌이 서버에서 BuzzRoulette을 비활성화한 앱에는 룰렛 아이콘이 표시되지 않습니다.

  • 버즈빌 서버에서 변경된 설정이 적용되기까지 최대 6시간이 소요될 수 있습니다.

Custom View로 직접 구현한 툴바에는 룰렛 아이콘을 추가할 수 없습니다.

FeedToolbar에 룰렛 아이콘 추가하기

BuzzAd Android용 SDK에서 제공하는 FeedToolbar 기본 UI를 수정하여 Feed 툴바에 룰렛 아이콘을 추가할 수 있습니다. 룰렛 아이콘을 추가하려면 addRouletteMenuItemView를 호출하세요.

public class YourFeedToolbarHolder extends DefaultFeedToolbarHolder { @Override public View getView(Activity activity, @NonNull final String unitId) { toolbar = new FeedToolbar(activity); // FeedToolbar에서 제공하는 기본 템플릿을 사용합니다. // ...생략 ... addRouletteMenuItemView(activity); // 룰렛 버튼을 이 함수를 통해 추가할 수 있습니다. return toolbar; } ... }

PopToolbar에 룰렛 아이콘 추가하기

BuzzAd Android용 SDK에서 제공하는 PopToolbar 기본 UI를 수정하여 Pop Feed 툴바에 룰렛 아이콘을 추가할 수 있습니다. 룰렛 아이콘을 추가하려면 addRouletteMenuItemView를 호출하세요.

class YourPopToolbarHolder extends DefaultPopToolbarHolder { @Override public View getView(Activity activity, @NonNull final String unitId) { toolbar = new PopToolbar(activity); // PopToolbar 에서 제공하는 기본 Template 사용 // ...생략 ... addRouletteMenuItemView(activity); // 룰렛 버튼 추가 // ...생략 ... return toolbar; } ... }

티켓박스 푸시 알림 기능

티켓박스 푸시 알림은 사용자에게 획득할 수 있는 티켓 또는 티켓박스가 있음을 알리는 로컬 푸시 알림입니다. 티켓박스는 사용자가 광고에 참여하지 않아도 룰렛용 티켓을 하루에 한 번 획득할 수 있는 기능으로, 룰렛 화면에 진입하는 비율을 효과적으로 높이는 기능을 수행합니다.

티켓박스 푸시 알림을 활성화하기 위한 배너는 '티켓박스가 도착했습니다'라는 메시지와 바로 확인하기 버튼으로 구성되어 룰렛 화면에 기본적으로 나타납니다. 사용자가 이 배너를 누르면 티켓박스에 대한 설명을 확인하고 티켓박스 푸시 알림 기능을 활성화할 수 있으며, 티켓박스를 획득한 사용자의 룰렛 화면에서는 배너가 사라졌다가 다음날 다시 나타납니다.

티켓박스 푸시 알림 배너를 룰렛 화면에서 제거하거나 다시 표시하려면 버즈빌 담당자에게 연락하세요.

사용자는 룰렛 화면 우측 상단의 메뉴 아이콘을 통해 티켓박스 푸시 알림을 끌 수 있습니다.

[티켓박스 푸시 알림 배너와 알림 창에 나타나는 티켓박스 푸시 알림]