Versions Compared

Key

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

...

Code Block
languagejava
final FeedConfig popFeedConfig = new FeedConfig.Builder("YOUR_POP_UNIT_ID").build();
final PopConfig popConfig = new PopConfig.Builder(popFeedConfig)
                      .build();
        
final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context)
        ...생략...
        .setPopConfig(popConfig)
        .build();
        
BuzzAdBenefit.init(this, buzzAdBenefitConfig);
Info

FeedConfig로 설정하는 기능에 대한 자세한 내용은 Feed 고급 설정 토픽을 참고하세요.

Pop 표시 시간 변경하기

Pop 버튼이 뜬 후 사라지기 전까지 노출되는 시간을 수정할 수 있습니다. 초기 설정 값은 5초입니다.

Code Block
languagejava
PopConfig popConfig = new PopConfig.Builder(feedConfig)
    .idleTimeInMillis(1000) //Pop 표시 시간
    .build();

Pop 표시 위치 변경하기

사용자가 기기의 화면을 잠금해제할 때마다 Pop이 표시되는 위치를 설정할 수 있습니다. 초기 설정 값은 SidePosition.Side.RIGHT, 0.6f(사용자 기기 화면 우측에서 하단 기준으로 60% 높이)입니다.

Code Block
languagejava
PopConfig popConfig = new PopConfig.Builder(feedConfig)
    .initialSidePosition(SidePosition(SidePosition.Side.RIGHT, 0.6f)) // Pop 표시 위치
    .build();

Pop

...

지면 종료 시 광고 게재하기

Pop 지면을 추가하면 기존에 연동한 Feed에 Pop 활성화 버튼이 자동으로 표시됩니다. Pop을 활성화하지 않은 사용자는 이 버튼을 통해 자연스럽게 Pop을 활성화할 수 있으며, Pop을 한 번 활성화하면 버튼은 Feed 지면에서 사라집니다.

...

Pop 활성화 버튼을 숨기려면 optInAndShowPopButtonHandlerClass(null)을 호출하세요.

...

languagejava

...

지면 닫기 버튼을 눌러 지면을 종료하기 전 뷰에 Unit ID를 설정해 사용자에게 광고를 추가적으로 노출할 수 있습니다.

Code Block
languagejava
PopConfig popConfig = new PopConfig.Builder(feedConfig)
     .optInAndShowPopButtonHandlerClass(nullpopExitUnitId(R.id.your_pop_exit_unit_id) // Pop 활성화종료 버튼광고 숨김지면 Unit ID
      .build();

Pop 포그라운드 서비스 알림 자체 구현하기

PopConfig를 사용해 Pop 포그라운드 서비스 알림을 직접 구현해 알림의 동작, UI 레이아웃까지 변경할 수 있습니다.

Pop을 사용하면 Pop의 포그라운드 서비스 알림이 활성화되며 PopConfig를 사용해 직접 구현하지 않으면 사용자 모바일 기기 상단의 알림 창에 창에는 BuzzAd Android용 SDK에서 기본으로 제공하는 포그라운드 서비스 알림이 표시됩니다. 또는 Pop 포그라운드 서비스 알림을 직접 구현해 알림의 동작, UI 레이아웃까지 변경할 수 있습니다.

...

Info

BuzzAd Android용 SDK에서 기본으로 제공하는 포그라운드 서비스 알림의 디자인을 변경하려면 Pop 포그라운드 서비스 알림 디자인 변경하기 토픽을 참고하세요.

...

  1. PopControlService의 상속 클래스를 구현하세요.

    • notificationChannel을 생성하거나 View를 등록할 수 있습니다.

    • getPopPendingIntent(unitId, context)를 등록해 Pop 지면으로 진입하는 PendingIntent를 제공할 수 있습니다.
      다음은 PopControlService의 상속 클래스를 구현하는 예시입니다.

      Code Block
      languagejava
      public class YourControlService extends PopControlService {
      
          @Override
          protected Notification buildForegroundNotification(@NonNull String unitId, @NonNull PopNotificationConfig popNotificationConfig) {
              // Pop을 표시하는 PendingIntent (원형 아이콘)
              PendingIntent popPendingIntent = getPopPendingIntent(unitId, this);
      
              // 필요에 따라 notificationChannel을 등록합니다.
              NotificationCompat.Builder builder;
              if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                  createNotificationChannelIfNeeded();
                  builder = new NotificationCompat.Builder(this, NOTIFICATION_CHANNEL_ID);
              } else {
                  builder = new NotificationCompat.Builder(this);
              }
      
              // Pop Service Notification 에 사용할 View 를 등록합니다.
              RemoteViews remoteView = new RemoteViews(getPackageName(), R.layout.view_custom_notification);
              builder.setSmallIcon(popNotificationConfig.getSmallIconResId())
                      .setContent(remoteView)
                      .setContentIntent(popPendingIntent)
                      .setPriority(PRIORITY_LOW)
                      .setShowWhen(false);
              if (popNotificationConfig.getColor() != null) {
                  builder.setColor(popNotificationConfig.getColor());
              }
              return builder.build();
          }
      
          @TargetApi(Build.VERSION_CODES.O)
          protected void createNotificationChannelIfNeeded() {
              final NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
              if (notificationManager.getNotificationChannel(NOTIFICATION_CHANNEL_ID) == null) {
                  final NotificationChannel channel = new NotificationChannel(NOTIFICATION_CHANNEL_ID, NOTIFICATION_CHANNEL_NAME, NotificationManager.IMPORTANCE_LOW);
                  channel.setShowBadge(false);
                  notificationManager.createNotificationChannel(channel);
              }
          }
      }

  2. NotificationIdPopNotificationConfig에서 설정하세요. 다음의 예시를 참고하세요.

    Code Block
    languagejava
    final PopNotificationConfig popNotificationConfig = new PopNotificationConfig.Builder(getApplicationContext())
                    .notificationId(NOTIFICATION_ID)
                    .build();
    
    final FeedConfig popFeedConfig = new FeedConfig.Builder("YOUR_POP_UNIT_ID").build();
    final PopConfig popConfig = new PopConfig.Builder(popFeedConfig)
            .popNotificationConfig(popNotificationConfig)
            .controlService(YourControlService.class)
            .build();
    
    final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context)
            .setPopConfig(popConfig)
            .build();

  3. 구현한 상속 클래스를 AndroidManifest.xml 파일에 등록하세요.

    Code Block
    languagejava
    // AndroidManifest.xml
    
    <application
        ...생략...
        
        <service android:name=".YourControlService" />
        
        ...생략...
    </application> 

Pop 활성화 버튼 숨기기

Pop 지면을 추가하면 기존에 연동한 Feed에 Pop 활성화 버튼이 자동으로 표시됩니다. Pop을 활성화하지 않은 사용자는 이 버튼을 통해 자연스럽게 Pop을 활성화할 수 있으며, Pop을 한 번 활성화하면 버튼은 Feed 지면에서 사라집니다.

...

Pop 활성화 버튼을 숨기려면 optInAndShowPopButtonHandlerClass(null)을 호출하세요.

Code Block
languagejava
final FeedConfig feedConfig = new 

...

FeedConfig.Builder("YOUR_POP_UNIT_ID")
        

...

.optInAndShowPopButtonHandlerClass(null) // Pop 활성화 버튼 숨김
        .

...

build();

툴바 자체 구현하기

Pop 지면 내 툴바의 디자인을 변경할 수 있습니다. 툴바 영역의 UI를 변경하는 방법은 2가지입니다. 아래 2가지 방법 중 하나를 선택하여 연동하세요.

...