미션팩(MissionPack)
미션팩을 추가하고 설정하고 SDK 인터페이스를 사용해 구현하는 방법을 알아보세요.
주요 특징
미션팩은 유저들이 광고를 참여해 받은 리워드의 일부분(%)을 미션을 모두 완수했을 때 특별 보상으로 지급하는 기능입니다. 매주 월요일에 자동으로 시작해 일요일 자정에 종료되는 주간 단위의 미션이며, 높은 매출 성과를 낼 수 있는 광고들을 게이미피케이션 요소를 통해 학습시키고 매출의 개선을 이뤄낼 수 있습니다. 미션팩 화면에서 유저가 "참여하기" 버튼을 클릭하면 미션에 맞는 광고를 곧바로 참여할 수 있는 화면 또한 제공합니다.
- 원하는 광고와 미션의 갯수를 자유롭게 세팅
- 깔끔하고 세련된 유저 중심의 UI와 UX
- 코드 수정 없이 가능한 다양하고 폭 넓은 UI 커스텀 지원
- 매출와 유저 인게이지먼트 성과에 맞게 조정 가능한 특별 보상 비율
- 베네핏허브를 표시할 떄 가장 먼저 미션팩 화면을 열 수 있는 기능 지원
✅ 중요
5.23.2 버전 이상 적용 시 미션팩이 추가되므로 포스트백 연동 가이드의 안내에 따라 요청 파라미터 처리가 필요합니다.
✏️ 참고
- 미션팩 디자인을 변경하려면 커스터마이징 토픽을 참고하세요.
- 미션팩을 진입점으로 구현하려면 '베네핏허브 표시 화면 변경하기' 항목의 미션팩을 바로 표시하기 토픽을 참고하세요.
연동
미션팩 지면을 연동하는 방법을 확인해 보세요.
1 단계. 준비하기
- 시작하기 적용 완료
- 미션팩 지면에 사용할 Unit ID (이하
YOUR_MISSION_PACK_UNIT_ID
)
2 단계. 미션팩 화면에 표시하기
미션팩을 화면에 표시하려면 다음의 절차를 따르세요.
MissionPack 객체를 선언하세요.
canOpen
함수를 통해 미션팩을 열 수 있는 상태인지 확인하세요.show
함수를 통해 미션팩을 화면에 표시하세요.
- Swift
- Objective-C
import UIKit
import BuzzvilSDK
class MissionPackViewController: UIViewController {
let missionPack = BuzzAdBenefitMissionPack(unitId: "YOUR_MISSION_PACK_UNIT_ID")
override func viewDidLoad() {
super.viewDidLoad()
showMissionPack()
}
// missionPack 사용가능한지 체크하기
func checkCanOpenMissionPack() {
missionPack.canOpen {
print ("MissionPack Can open !")
} onFailure: { error in
print ("MissionPack Can't open error: \(error.localizedDescription)")
}
}
// missionPack 화면에 표시하기
func showMissionPack() {
missionPack.show(on: self, onFailure: { error in
print ("MissionPack Can't open error: \(error.localizedDescription)")
})
}
}
@import BuzzvilSDK;
#import "MissionPackViewController.h"
@interface MissionPackViewController()
@property (nonatomic, strong, readonly) BuzzAdBenefitMissionPack * missionPack;
@end
@implementation MissionPackViewController
- (void)viewDidLoad {
[super viewDidLoad];
_missionPack = [[BuzzAdBenefitMissionPack alloc] initWithUnitId:@"YOUR_MISSION_PACK_UNIT_ID"];
}
- (void)checkCanOpenMissionPack {
[_missionPack canOpenOnSuccess:^{
// missionPack 이 열릴 수 있을 때 호출 됩니다.
} onFailure:^(NSError * _Nonnull error) {
// missionPack 이 열릴 수 없을 때 호출 됩니다.
}];
}
- (void)showMissionPack {
[_missionPack showOn:self onFailure:^(NSError * _Nonnull error) {
// missionPack 이 열릴 수 없을 때 호출 됩니다.
}];
}
@end