Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

Filter는 커스터마이징이 가능합니다. 이에 대해서는 다음 링크를 참조해 주세요.

광고 미할당 안내 디자인 자체 구현하기

Feed 지면에 진입한 시점에 노출할 광고가 없다면 광고 미할당 안내 UI가 표시됩니다. 미할당 안내 디자인은 자체 구현하여 변경할 수 있습니다.

...

광고 미할당 안내 디자인을 직접 구현하려면 다음의 절차를 따르세요.

  1. Feed 지면에 광고가 할당되지 않았을 때의 화면에 추가할 에러 이미지(feedErrorImageView), 타이틀(feedErrorTitle), 상세 설명(feedErrorDescription) 레이아웃을 작성하세요.

    Code Block
    <!-- custom_feed_error_view.xml -->
    
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:orientation="vertical"
        android:padding="40dp">
    
        <ImageView
            android:id="@+id/feedErrorImageView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
    
        <TextView
            android:id="@+id/feedErrorTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="32dp"
            android:textColor="@color/bz_text_emphasis"
            android:textSize="16sp" />
    
        <TextView
            android:id="@+id/feedErrorDescription"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="8dp"
            android:textAlignment="center"
            android:textColor="@color/bz_text_description"
            android:textSize="14sp" />
    
    </LinearLayout>
  2. FeedErrorViewHolder를 구현하는 커스텀 클래스 CustomErrorView를 새로 생성하고, 자동 완성되는 GetView() 메소드를 다음과 같이 구현하세요.

    Code Block
    public class CustomErrorView extends FeedErrorViewHolder {
        @NonNull
        @Override
        public View getErrorView(@NonNull Activity activity) {
            // TODO: 1번에서 생성한 custom_feed_error_view 레이아웃을 inflate
            View errorView = activity.getLayoutInflater().inflate(R.layout.custom_feed_error_view, null, false);
            final ImageView errorImageView = errorView.findViewById(R.id.feedErrorImageView);
            final TextView errorTitle = errorView.findViewById(R.id.feedErrorTitle);
            final TextView errorDescription = errorView.findViewById(R.id.feedErrorDescription);
    
            errorImageView.setImageResource(R.drawable.bz_ic_feed_profile_coin); // 에러 이미지 설정
            errorTitle.setText("타이틀: 광고가 없습니다. "); // 에러 타이틀 텍스트 설정
            errorDescription.setText("디스크립션: 할당된 광고가 없습니다!"); // 에러 상세 텍스트 설정
            
            return errorView;
        }
    }
  3. FeedConfigfeedErrorViewHolderClass 속성에 이전 단계에서 생성한 CustomErrorView 클래스를 추가하세요.

    Code Block
    // Feed 지면 초기화
    // TODO: feedErrorViewHolderClass 속성에 2번에서 생성한 CustomErrorView 클래스를 설정합니다.
    final FeedConfig feedConfig = new FeedConfig.Builder(YOUR_FEED_UNIT_ID)
                    .feedErrorViewHolderClass(CustomErrorView.class)
                    .build();

프로필 입력 배너

사용자의 출생년도와 성별 정보를 설정하지 않으면 Feed 상단에 프로필 정보 입력을 권장하는 배너가 표시됩니다. 이 배너를 원하지 않는 경우, 이 문서에서 설명하는 방법을 통해 비활성화할 수 있습니다.

...

Feed에 광고 지면을 추가하여 매출 증가를 노릴 수 있습니다.

Feed 종료 시 인터스티셜 광고 노출: Feed Exit Interstitial

유저가 Feed 지면에서 이탈을 할때, 인터스티셜 광고를 노출할 수 있습니다.

Note

단, 배너 광고는 애드 네트워크(ADN)에서 내려오는 광고만 보여줍니다.

Info

종료 인터스티셜 광고는 별도의 지면이므로, 별도의 Unit ID가 필요합니다. 버즈빌 담당자에게 종료 인터스티셜 광고 지면을 위한 Unit Id의 발급을 요청하시기 바랍니다.

...

아래 코드에서 YOUR_FEED_EXIT_INTERSTITIAL_UNIT_ID 문자열 대신에 발급받은 종료 인터스티셜 광고 용 Unit ID를 설정합니다.

Code Block
languagejava
final FeedConfig feedConfig = new FeedConfig.Builder(context, YOUR_FEED_UNIT_ID)
    ...생략...
    .exitInterstitialUnitId("YOUR_FEED_EXIT_INTERSTITIAL_UNIT_ID")
    .build();

액션형

...

광고의 랜딩

...

Info

BottomSheet을 사용하고 싶지 않은 경우에는 일반적인 방식으로도 사용 가능합니다. 이 경우 별도의 배너 광고를 보여줄 수는 없습니다.

...

액션형 광고의 랜딩 BottomSheet에 배너 광고 노출

액션형 광고가 랜딩되는 BottomSheet에 배너 광고를 추가할 수 있습니다.

...

Code Block
languagebash
dependencies {
    implementation("com.buzzvil.mediation:sdk-adfit:3.4.0.1")
    implementation("com.buzzvil.mediation:sdk-outbrain:3.9.2.1")
    implementation("com.buzzvil.mediation:sdk-five:1.1.0")
}

Pop

...

활성화 버튼 추가하기

...

아래 코드와 같이 FeedConfig를 생성할 때 Pop을 사용하도록 설정하면 Pop을 이용할 수 있습니다.
Feed 진입경로 중 Pop을 연동한 경우 Pop 활성화 버튼이 Feed 지면에 보일 수 있습니다.
Pop은 앱 안에서 지면을 보여주는 Feed 지면을 팝을 통해 유저가 앱 밖에서도 Feed 지면을 경험할 수 있게 합니다.
Pop 을 활성화하지 않은 유저에게 Feed 지면의 우측 하단에 활성화 버튼을 보여주어 유저의 Pop 활성화를 유도합니다.

Code Block
FeedConfig feedConfig = new FeedConfig.Builder(getApplicationContext(), YOUR_FEED_UNIT_ID)
        ...생략...
        .optInFeatureList(Collections.singletonList(OptInFeature.Pop))
        .build();
final BuzzAdBenefitConfig buzzAdBenefitConfig

이를 적용하면 Feed 지면에 위와 같이 Pop 활성봐 버튼이 노출됩니다. UI 커스터마이징 가이드는 여기에서 확인할 수 있습니다.
만일 Pop 활성화 버튼을 표시하고 싶지 않을 경우는 아래와 같이 null 로 설정합니다.

Code Block
languagejava
final FeedConfig feedConfig = new BuzzAdBenefitConfigFeedConfig.Builder(context)
   , "YOUR_FEED_UNIT_ID")
    ...생략...
   
    .setFeedConfigoptInAndShowPopButtonHandler(feedConfignull)
        .build();
BuzzAdBenefit.init(this, buzzAdBenefitConfig);

...