Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 31 Next »

개요

본 가이드는 BuzzAd SDK의 Feed 타입 광고를 연동하는 방법을 다루는 문서입니다. Feed는 여러 광고를 리스트 형식으로 볼 수 있는 지면입니다.

Feed 타입을 연동하기 전, 시작하기의 연동 사항을 모두 적용했는지 확인해주세요.

Feed 초기화

Application Class의 onCreate에 아래 코드를 추가합니다.

public class App extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        final FeedConfig feedConfig = new FeedConfig.Builder(context, "YOUR_FEED_UNIT_ID")
          .feedHeaderViewAdapterClass(DefaultFeedHeaderViewAdapter.class)
          .build();
        final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context)
            .setFeedConfig(feedConfig)
            .build();
        BuzzAdBenefit.init(this, buzzAdBenefitConfig);
        ...(생략)...
    }
}

 Benefit SDK 2.21 미만

PopConfig와 FeedConfig를 추가하는 interface가 다르니 주의해주세요

final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context)
        .add(feedConfig)
        .build();
BuzzAdBenefit.init(this, buzzAdBenefitConfig);

Feed 보여주기

FeedHandler 클래스를 이용하여 피드를 사용자에게 보여줍니다. 피드를 보여주는 시점은 사용자가 앱내의 특정 버튼을 탭했거나 BuzzAdBenefit SDK에서 제공하는 다양한 EntryPoint(진입경로)가 될 수 있습니다. 여기서는 사용자가 매체사에서 구현한 버튼이나 배너 등을 탭했을때 피드를 보여주는 방법을 안내합니다.

final FeedHandler feedHandler = new FeedHandler(context, "YOUR_FEED_UNIT_ID");
feedHandler.startFeedActivity(this);

SDK에서 제공하는 Activity가 아닌 다른 형태로 Feed를 보여주고 싶다면 고급 설정을 참고하세요.

FeedHandler 인스턴스를 생성 후에, startFeedActivity를 반복해서 호출하더라도 계속 같은 광고를 노출하게 됩니다. 새로운 광고가 노출되기를 원하는 경우, FeedHandler 인스턴스를 다시 생성하거나, load/preload 를 재호출 후에 startFeedActivity를 호출해야 합니다.

Feed의 진입 전 광고 할당 받기

유저가 Feed지면에 접근하기 전에 서버로 부터 광고를 미리 할당받기 위해서 preload를 사용할 수 있습니다.
preload에 성공하여 광고가 할당된 경우 FeedPreloadListene.onPreloaded가 호출되며, 광고 할당에 실패한 경우 FeedPreloadListene.onError가 호출됩니다.

final FeedHandler feedHandler = new FeedHandler(context, "YOUR_FEED_UNIT_ID");
feedHandler.preload(new FeedHandler.FeedPreloadListener() {
    @Override
    public void onPreloaded() {
        // 광고의 개수
        int feedAdSize = feedHandler.getSize();
        // 적립 가능한 총 포인트 금액
        int feedTotalReward = feedHandler.getTotalReward();
    }

    @Override
    public void onError(AdError error) {
        // 광고가 없을 경우 호출됩니다. error를 통해 발생한 error의 원인을 알 수 있습니다
    }
});

onPreloaded 에서 startFeedActivity 를 실행하여 유저 경험을 더 좋게 할 수 있습니다.

  • No labels