(Android v3.0.x) 8. Push 마이그레이션 가이드
기본 설정
주요 변경 내역
더 이상 Push 기능 설정을 위해
NotificationWorker
서브클래스를 생성할 필요가 없습니다.디바이스를 재부팅하거나 앱 업데이트 후에도 Push가 정상적으로 동작할 수 있도록 하는
Restart Receiver
를 등록할 필요가 없습니다.Push 기능을 부가 설정할 수 있는
PushConfig
가 추가되었습니다.BuzzAdPush.getInstance()
로 BuzzAd Android용 SDK 3.0에서 인스턴스를 관리하도록 변경되었습니다.
Push 초기화하기
BuzzAd Android용 SDK 3.0부터는 Push기능을 부가적으로 설정할 수 있는 PushConfig
가 추가되었으며, 앱이 실행 중이지 않더라도 사용자가 Push를 정상적으로 수신하기 위한 BroadCastReceiver구현과 등록은 SDK내부에서 자동으로 처리하도록 변경되었습니다. 아래 순서에 따라 기존 코드를 변경하세요.
Push 기능을 부가 설정할 수 있는
PushConfig
객체를 생성하세요.PushConfig
를 통해서 추가할 수 있는 설정 값은 Push 초기화하기 토픽을 참고하세요.
setPushConfig(pushConfig)
속성에PushConfig
객체를 등록하세요.// TODO: Push 기능을 부가 설정할 수 있는 PushConfig 객체를 생성하세요. final PushConfig pushConfig = new PushConfig.Builder().build(); final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context) .setPushConfig(pushConfig) // TODO: 위에서 생성한 PushConfig 객체를 설정합니다. .build(); // BuzzAdBenefit SDK 초기화 BuzzAdBenefit.init(this, buzzAdBenefitConfig);
이전 코드에 사용한
BuzzAdPush
객체를 삭제하세요.// TODO: 아래 코드를 삭제합니다. final BuzzAdPush buzzAdPush = new BuzzAdPush( CustomNotificationWorker.class, new PushDialogConfig.Builder().build());
BuzzAd Android용 SDK 3.0부터 앱이 실행 중이지 않더라도 사용자가 Push를 정상적으로 수신하기 위한 BroadCastReceiver구현과 등록은 SDK내부에서 자동으로 처리합니다. 그러므로
NotificationWorker
서브클래스를 삭제하세요.// TODO: 기존에 구현한 NotificationWorker 서브 클래스를 삭제합니다. public class CustomNotificationWorker extends NotificationWorker { public CustomNotificationWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { super(context, workerParams); } @Override @NonNull public NotificationConfig getNotificationConfig() { return new NotificationConfig.Builder() .notificationId(1234) .build(); } }
기존에 Push 기능을 사용하기 위해 생성한
BroadcastReceiver
서브클래스를 삭제하세요.AndroidManifest.xml
을 열고, 위에서 삭제한BroadcastReceiver
서브클래스의receiver
요소를 삭제하세요.
BuzzAdPush 인스턴스 생성 및 접근
BuzzAd Android용 SDK SDK 3.0부터는 BuzzAdPush.getInstance()
로 SDK에서 인스턴스를 관리하도록 변경되었습니다. 앞으로 BuzzAdPush
기능은 BuzzAdPush.getInstance()
으로 사용할 수 있습니다.
아래는 유저가 사용자에게 Push알림 수신과 리워드 광고 구독을 유도하는 예시 코드입니다.
고급 설정
Push Notification 클릭 동작 변경
이전 버전에서는 Push 알림을 클릭했을 때, Feed 지면을 앱의 런처 액티비티에서 보이게끔 NotificationWorker
서브클래스의 구현이 필요했습니다.
BuzzAd Android용 SDK 3.0부터는 PushConfig
으로 간단히 설정이 가능합니다. 아래 순서에 따라 기존 코드를 수정하세요.
PushConfig
의openFeedFromLaunchActivity
속성을true
로 설정하세요.false
로 설정하면 사용자가 푸시 알림을 누르면 런처 액티비티를 실행하지 않고 바로 Feed가 열립니다.
기존에 구현한
NotificationWorker
서브클래스를 삭제하세요.기존에 구현한
BuzzAdPush
객체를 삭제하세요.
디자인 커스터마이징
Push 구독 다이얼로그 UI 커스터마이징
BuzzAd Android용 SDK 3.0부터는 BuzzAdPushTheme
을 생성하여 Push 알림 구독 다이얼로그 UI를 설정하도록 변경되었습니다. 아래 순서에 따라 기존 코드를 수정하세요.
Push 알림 구독 다이얼로그 UI 커스터마이징할 수 있는
java
객체를 생성하세요.변경하고자 하는 다이얼로그 UI 타입에 따라 적절한 메소드를 호출하세요.
colorConfirm
: 다이얼로그 내 다음 버튼의 색상colorCancel
: 다이얼로그 내 나중에 하기 버튼의 색상registerLogoImage
: Push 광고 구독하기 다이얼로그 내 로고 이미지unregisterLogoImage
: Push 광고 구독 취소 다이얼로그 내 로고 이미지
BuzzAdPush.getInstance().setTheme()
메소드에 위에서 생성한BuzzAdPushTheme
객체를 전달하세요.코드 중복을 피하기 위해, 기존에 생성한
PushDialogConfig
관련 코드를 삭제하세요.
푸시 알림 아이콘 변경
BuzzAd Android용 SDK SDK 3.0부터는 PushConfig
에서 Push 알림 아이콘 이미지를 설정하도록 변경되었습니다. 아래 순서에 따라 기존 코드를 수정하세요.
PushConfig
객체를 생성하고, Push 알림에 사용할 앱 아이콘 이미지를iconResourceId()
속성에 설정하세요.BuzzAdBenefitConfig
객체에 위에서 생성한PushConfig
객체를setPushConfig()
로 설정하세요.NotificationWorker
서브클래스에서NotificationConfig
관련 코드를 모두 삭제하세요.