BuzzAd-Benefit Web SDK AOS 연동 가이드

본 연동 가이드는 BuzzAd-Benefit Web SDK를 통해 안드로이드 앱 내의 웹뷰에서 광고를 보여주기 위해 필요한 Android SDK 연동 사항을 담고 있습니다. 광고를 보여줄 웹페이지는 Web SDK를 연동해야 합니다.

최소 지원 버전: 2.0.2

주의사항

  1. 안드로이드의 경우 TLS 1.2가 지원되지 않는 OS 4.4.2 미만의 버전에서는 Web SDK가 작동하지 않습니다.

설치


자세한 구현 사항은 샘플 코드에서 확인할 수 있습니다.

build.gradle 의 dependencies 부분에 아래 코드 추가

1 2 3 4 5 6 7 8 repositories { maven { url "https://dl.buzzvil.com/public/maven" } } ... dependencies { implementation ("com.buzzvil:buzzad-benefit:2.21.+") }

 

SDK 연동


1 단계: APP_ID설정

BuzzAdBenefit SDK를 연동하기 위해 AndroidManifest에 APP ID를 등록해야 합니다. 아래 코드를 참고하여 발급받은 YOUR_AOS_APP_ID를 입력해 주세요.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="..."> <application ...> <activity> </activity> <!-- Replace 0123456789 to YOUR_AOS_APP_ID --> <meta-data android:name="com.buzzvil.APP_KEY" android:value="app-pub-0123456789" /> </application> </manifest>

2단계: BuzzAdBenefit 초기화

Application Class의 onCreate에 아래 코드를 추가할 것을 권장합니다. 단, 최초 광고 요청 전에만 불린다면 자유롭게 코드 위치를 결정할 수 있습니다.

1 2 3 4 5 6 7 public class App extends Application { @Override public void onCreate() { super.onCreate(); BuzzAdBenefit.init(this, new BuzzAdBenefitConfig.Builder(this).build()); } }

 

2 단계: 사용자 정보를 UserProfile 객체로 만들어서 저장

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

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

  • userId : 매체사 서비스 유저를 unique 하게 구분할 수 있는 식별값. 유저를 구별할 수만 있으면 매체사 서비스의 사용자 계정이 아니어도 됩니다.

동일 유저에 대해 복수개의 User ID를 연동하거나 혹은 User ID 값이 변경될 가능성이 있을 경우, 버즈빌 담당 운영 매니저와 논의해야 합니다.

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

  • gender

    • UserProfile.Gender.MALE: 남성

    • UserProfile.Gender.FEMALE: 여성

  • birthYear: 출생년도

1 2 3 4 5 6 7 8 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);

유저의 로그인 정보를 웹페이지에서 알 수 있지만 앱에서 알 수 없는 경우, 웹페이지에서 사용자 프로필을 설정하는 기능을 지원하고 있습니다.

3 단계: 광고를 표시할 웹뷰 설정

광고를 표시하려고 하는 웹뷰에 다음 코드를 추가하여, 웹 SDK와 소통할 수 있어야 합니다.

1 2 3 4 5 6 7 final BuzzAdBenefitJavascriptInterface javascriptInterface = new BuzzAdBenefitJavascriptInterface(webView); webView.getSettings().setJavaScriptEnabled(true); // JS를 사용하여 광고를 로드하기 때문에 필수임 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { // 롤리팝부터 Mixed Content 에러 막기 위함. webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); } webView.addJavascriptInterface(javascriptInterface, BuzzAdBenefitJavascriptInterface.INTERFACE_NAME);

4 단계. Benefit JS SDK가 삽입된 웹페이지 로드

Benefit JS SDK가 삽입된 웹페이지를 열 경우, 안드로이드 코드에서 설정한 UserProfile 정보 등을 JS SDK에서 자동으로 받아 광고를 로드합니다.

1 webView.loadUrl(MY_WEB_PAGE);

5 단계. 사용자 정보 삭제

유저가 매체사 앱에서 로그아웃하는 시점에 UserProfile 설정값을 지워 유저의 사용 정보를 삭제합니다.

1 BuzzAdBenefit.setUserProfile(null);