개요
Feed 지면은 광고를 리스트 형식으로 제공하는 지면입니다.
준비 사항
Feed 지면에 사용할 Unit ID (이하
YOUR_FEED_UNIT_ID
)
Feed 초기화
BuzzAdBenefitConfig에 FeedConfig
를 추가합니다.
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); ... } }
FeedConfig를 사용하여 Feed 지면의 기능과 디자인을 변경할 수 있습니다. 고급 설정과 디자인 커스터마이징을 참고하여 Feed 지면의 기능과 변경 방법을 확인할 수 있습니다.
Feed 보여주기
바텀시트 형태의 Feed지면을 표시합니다.
final FeedHandler feedHandler = new FeedHandler(context, "YOUR_FEED_UNIT_ID"); feedHandler.startFeedActivity(this);
startFeedActivity()
를 반복해서 호출하더라도 광고를 새로 할당받지 않습니다.
새로운 광고를 할당하기 위해서는 FeedHandler 인스턴스를 재생성하거나, preload()
를 재호출해야합니다.
사용자에게 다른 형태로 Feed지면을 제공하기 위해서 프래그먼트로 Feed 연동을 참고하시기 바랍니다.
광고 미리 할당 받기
사용자가 Feed 지면에 접근하기 이전에 preload()
를 호출하여 광고를 미리 할당받을 수 있습니다. 광고가 없을 경우에 Feed 지면에 접근하지 못하게 하는 등 사용자 경험을 고려하여 연동할 수 있습니다.
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를 통해 원인을 알 수 있습니다 } });
onPreloaded에서 startFeedActivity를 호출하면 사용자 경험을 더 좋게 할 수 있습니다.