(Android v3.0.x) 5. Pop 마이그레이션 가이드
- 1 Pop 기본 설정
- 1.1 주요 변경 내역
- 1.2 Pop 지면 추가하기
- 1.3 Pop 준비: PopConfig 설정 사용
- 1.4 Pop 초기화 및 활성화
- 1.5 Pop 비활성화
- 2 Pop 고급 설정
- 2.1 툴바 자체 구현하기
- 2.2 콘텐츠 숨기기
- 3 Pop 커스터마이징
- 3.1 Pop 버튼 색상
- 3.2 Pop 버튼 아이콘
- 3.3 툴바 영역 커스터마이징
- 3.4 스낵바 및 토스트 메시지 커스터마이징
- 3.5 유틸리티 영역 UI 변경
- 4 PopConfig.Builder 속성 API 비교
Pop 기본 설정
주요 변경 내역
FeedConfig.Builder
의 Context 인자가 삭제되었습니다.BuzzAdPop.getInstance()
로 BuzzAd Android용 SDK 3.0에서 인스턴스를 관리하도록 변경되었습니다.Pop을 다른 앱 위에 그리기 위한 권한 요청과 권한 획득 여부에 따른 콜백 이벤트를 제공합니다.
Pop 지면 추가하기
BuzzAd Android용 SDK 3.0에서 Pop 지면 추가하려면 아래 순서대로 기존 코드를 수정하세요.
FeedConfig.Builder
에 Context 인자를 삭제하세요.YOUR_FEED_UNIT_ID
에 Pop 지면에서 사용할 Pop Unit ID 값을 적용하여FeedConfig
객체를 생성하세요.생성한
FeedConfig
객체에optInFeatureList
를 설정하세요.FeedConfig
의 설정이 Pop 지면에도 동일하게 적용됩니다.FeedConfig
의 설정에 대한 자세한 내용은 Feed 고급 설정 토픽을 참고하세요.
setDefaultFeedConfig(feedConfig)
메소드에서FeedConfig
객체를 등록하세요.
// Context 인자를 삭제하고 Feed Unit ID 인자로만 객체를 생성합니다.
FeedConfig feedConfig = new FeedConfig.Builder("YOUR_POP_UNIT_ID")
.optInFeatureList(Collections.singletonList(OptInFeature.Pop))
.build();
//FeedConfig 등록 메소드 setFeedConfig() -> setDefaultFeedConfig() 으로 변경합니다.
final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context)
.setDefaultFeedConfig(feedConfig)
.build();
// BuzzAdBenefit SDK 초기화합니다.
BuzzAdBenefit.init(this, buzzAdBenefitConfig);
Pop 준비: PopConfig 설정 사용
BuzzAd Android용 SDK 3.0부터는 PopConfig를 설정하는 방식이 변경되었습니다. FeedConfig에서 설정되도록 변경되었습니다. 아래 순서에 따라 기존 코드를 수정하세요.
기존에 사용하던 Pop Unit ID로
FeedConfig
객체를 생성하세요.PopConfig.Builder
에 Context와 Unit ID를 삭제하고, 위에서 생성한FeedConfig
객체를 전달하세요.
// TODO: FeedConfig 객체를 생성합니다.
final FeedConfig popFeedConfig = new FeedConfig.Builder("YOUR_POP_UNIT_ID").build();
// TODO: PopConfig.Builder에서 Context, UNIT ID 인자를 삭제하고, FeedConfig 객체를 전달합니다.
final PopConfig popConfig = new PopConfig.Builder(popFeedConfig)
.build();
final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context)
.setPopConfig(popConfig)
.build();
BuzzAdBenefit.init(this, buzzAdBenefitConfig);
Pop 초기화 및 활성화
이전 버전에서는 다른 앱 위에 그리기 권한을 얻는 코드를 앱에서 명시적으로 호출하고, 그 응답에 대한 처리를 구현해야 했습니다.
BuzzAd Android용 SDK 3.0부터는 Pop을 권한 요청과 권한 획득 여부에 따른 콜백 이벤트를 제공합니다.
이전 버전에서 다른 앱 위에 그리기 위한 권한 요청 및 권한 획득 여부에 따라 Pop을 실행하도록 구현한 코드를 모두 삭제하세요.
BuzzAdPop.getInstance().activate()
를 호출하여 Pop을 활성화하고, 사용자로부터 다른 앱 위에 그리기 권한을 얻기 위한 동작을 수행하세요.onActivated
: 사용자가 권한을 승인하고 정상적으로 Pop이 활성화되었을 때 호출됩니다.onActivationFailed
: Pop 활성화가 실패했을 때 호출됩니다.
onAdLoaded()
에서 사용자의 기기 화면에 바로 Pop을 표시하기 위해BuzzAdPop.getInstance().show()
를 호출하세요.
Pop 비활성화
이전 버전에서는 Pop을 비활성화하려면 buzzAdPop.removePop(Context)
메소드를 사용했지만, BuzzAd Android용 SDK 3.0 부터는 BuzzAdPop.getInstance().deactivate(Context)
라는 메소드로 이름이 변경되었습니다.
buzzAdPop.removePop(Context)
코드를 삭제하세요.BuzzAdPop.getInstance().deactivate(Context)
메소드로 Pop을 비활성화하세요.
Pop 고급 설정
툴바 자체 구현하기
DefaultPopToolbarHolder
를 상속하여 클래스를 구현하는 방식은 동일하지만, BuzzAd Android용 SDK 3.0 부터는 PopConfig
가 아닌 FeedConfig
에 설정하도록 변경되었습니다.
콘텐츠 숨기기
Pop에서 콘텐츠를 보이지 않도록 설정하는 방법이 변경되었습니다.
이전 버전에서 사용한
articlesEnabled(false)
속성을 삭제하세요.사용 중인 Pop 지면에 콘텐츠를 숨기도록 유지하려면, 버즈빌 담당자에게 연락하세요.
Pop 커스터마이징
Pop 버튼 색상
BuzzAd Android용 SDK 3.0부터는 BuzzAdPopTheme
을 생성하여 Pop 버튼의 색상을 변경할 수 있습니다. 자세한 내용은 전체 테마 변경하기 토픽을 참고하세요.
Application
의onCreate
에 모든 광고 지면의 디자인을 커스터마이징할 수 있는BuzzTheme
객체를 생성하세요.colorPrimary()
속성에서 Pop 배경색을 설정하세요.BuzzAdTheme.setGloabalTheme()
에 위에서 생성한BuzzAdTheme
객체를 설정하세요.이때,
BuzzAdTheme.setGloabalTheme()
은 BuzzAd SDK 초기화BuzzAdBenefit.init()
을 실행하기 전에 호출해야 합니다.
코드 중복을 피하기 위해, 기존에
styles.xml
에서 설정한buzzvillColorPrimary
코드를 삭제하세요.
Pop 버튼 아이콘
BuzzAd Android용 SDK 3.0부터는 BuzzAdPopTheme
을 생성하여 Pop 버튼의 버튼 아이콘을 설정하도록 변경되었습니다. 아래 순서에 따라 기존 코드를 수정하세요.
Application
의onCreate
에 Pop 버튼 아이콘을 커스터마이징할 수 있는BuzzAdPopTheme
객체를 생성하세요.변경하고자 하는 Pop 버튼 아이콘에 따라 적절한 메소드를 호출하세요.
iconResId
: Pop 기본 버튼 아이콘 이미지rewardReadyIconResId
: 적립 가능한 리워드 포인트가 있을 때의 아이콘 이미지popFeedCloseIconResId
: Pop Feed 지면의 종료 아이콘 이미지
BuzzAdPop.getInstance().setTheme()
에 위에서 생성한BuzzAdPopTheme
객체를 설정하세요.코드 중복을 피하기 위해, 기존에 생성한
PopConfig
에 관련 코드를 삭제하세요.
툴바 영역 커스터마이징
BuzzAd Android용 SDK 3.0부터는 BuzzAdTheme
을 사용해 툴바 영역의 아이콘 색상을 변경할 수 있습니다. 자세한 내용은 전체 테마 변경하기 토픽을 참고하세요.
스낵바 및 토스트 메시지 커스터마이징
스낵바 및 토스트 메세지를 커스터마이징하기 위해 popFeedbackHandlerClass
를 구현한 방식은 더 이상 지원하지 않습니다.
이전 버전에서
DefaultPopFeedbackHandler
를 상속한 클래스를 삭제하세요.일반 광고 디자인 자체 구현하기 토픽을 참고하여,
onRewarded()
이벤트 콜백에서 유저에게 포인트를 지급할 때의 알림을 구현하세요.
유틸리티 영역 UI 변경
PopFeed 하단의 Utility영역을 커스텀하는 PopUtilityLayoutHandler
에서 커스텀 View를 등록하는 방식이 변경되었습니다.
PopUtilityLayoutHandler
를 상속한 클래스에서onLayoutCreated()
함수를 삭제하세요.onCreateView()
를 오버라이드하세요.레이아웃을 리턴하도록 수정하여 구현하세요.
PopConfig.Builder 속성 API 비교
2.x | 3.0 | 설명 |
---|---|---|
feedToolbarHolderClass |
| 툴바 자체 구현하기 토픽을 참고하세요. |
feedHeaderViewAdapterClass |
|
|
articlesEnabled |
|
|
initialPopIdleMode | - | 3.0부터는 기존 설정 값 중 |
popFeedbackHandlerClass |
| 스낵바 및 토스트 메시지 커스터마이징 토픽을 참고하세요. |
popIconClass | - |
|