OfferwallMission
NestAdsOfferwallMission
public class NestAdsOfferwallMission
package com.nestads.sdk.offerwall.model.mission미션 기능을 관리하는 클래스입니다. 미션 목록 조회, 상태 확인, 클릭 이벤트 처리 등의 기능을 제공합니다.
Methods
public fun setEventsListener(listener: OfferwallMissionEventsListener)
미션 이벤트 리스너를 설정합니다.
listener
미션 이벤트를 수신할 리스너
Example:
val mission = NestAds.Offerwall.mission()
mission.setEventsListener(object : OfferwallMissionEventsListener {
override fun onCompleted(mission: Mission) {
// 미션 완료 시 호출
}
override fun onProgressed(mission: Mission) {
// 미션 진행 상태 변경 시 호출
}
override fun onRefreshed(unitId: String?) {
// 미션 목록 갱신 시 호출
}
})public fun getOfferwallMissionResponse(): OfferwallMissionResponse?
현재 캐시된 미션 응답 데이터를 반환합니다.
Returns: OfferwallMissionResponse 인스턴스 또는 null
Example:
public fun getMissionList(onSuccess: (List<Mission>) -> Unit, onFailure: (OfferwallAdError) -> Unit)
미션 목록을 서버에서 조회합니다.
onSuccess
성공 시 미션 목록을 전달받는 콜백
onFailure
실패 시 에러 정보를 전달받는 콜백
Example:
public fun getMissionStatus(onSuccess: (MissionStatus) -> Unit, onFailure: (OfferwallAdError) -> Unit)
현재 미션 진행 상태를 조회합니다.
onSuccess
성공 시 미션 상태를 전달받는 콜백
onFailure
실패 시 에러 정보를 전달받는 콜백
Example:
public fun clickMission(missionId: String)
특정 미션을 클릭 처리합니다. SDK가 초기화되지 않은 경우 동작하지 않습니다.
missionId
클릭할 미션의 ID
Example:
public fun clickGetReward()
보상 받기를 클릭 처리합니다. SDK가 초기화되지 않은 경우 동작하지 않습니다.
Example:
Companion Object Methods
@JvmStatic public fun refreshMissionList(unitId: String?)
미션 목록을 새로고침합니다. 등록된 모든 리스너의 onRefreshed 콜백이 호출됩니다.
unitId
(Optional) 광고 유닛 ID
Example:
Usage Example
Mission
public data class Mission
개별 미션의 정보를 담는 데이터 클래스입니다.
Properties
id
String
미션 고유 ID
title
String
미션 제목
description
String
미션 설명
imageUrl
String
미션 이미지 URL
landingUrl
String
미션 클릭 시 이동할 URL
point
String
미션 보상 포인트
status
String?
미션 상태 (Optional)
progress
Int?
현재 진행 수 (Optional)
total
Int?
전체 목표 수 (Optional)
type
MissionType?
미션 타입 (Optional, 기본값: MissionType.NORMAL)
impressionOrder
Int?
노출 순서 (Optional)
placementId
String?
배치 ID (Optional)
Usage Example
MissionType
public enum class MissionType
미션의 타입을 정의하는 열거형 클래스입니다.
Enum Values
NORMAL
"normal"
일반 미션
OFFERWALL_PROMOTION
"offerwall_promotion"
오퍼월 프로모션 미션
Usage Example
MissionStatus
public data class MissionStatus
미션 진행 상태 정보를 담는 데이터 클래스입니다.
Properties
current
Int
현재 완료한 미션 수
total
Int
전체 미션 수
isCompleted
Boolean
모든 미션 완료 여부 (기본값: false)
canClaimReward
Boolean
보상 수령 가능 여부 (기본값: false)
Usage Example
OfferwallMissionResponse
public data class OfferwallMissionResponse
미션 API 응답 데이터를 담는 클래스입니다. UI 구성에 필요한 텍스트와 이미지 URL을 포함합니다.
Properties
success
Boolean?
응답 성공 여부
events
List<Mission>
미션 목록 (기본값: emptyList())
current
Int
현재 완료한 미션 수 (기본값: 0)
total
Int
전체 미션 수 (기본값: 0)
rewardUrl
String?
보상 URL
message
String?
메시지
titleText
String?
제목 텍스트
descriptionText
String?
설명 텍스트
bottomText
String?
하단 텍스트
rewardIconUrl
String?
보상 아이콘 URL
bottomIconUrl
String?
하단 아이콘 URL
Usage Example
OfferwallMissionEventsListener
public interface OfferwallMissionEventsListener
미션 이벤트를 수신하기 위한 리스너 인터페이스입니다.
Methods
fun onCompleted(mission: Mission)
미션이 완료되었을 때 호출됩니다.
mission
완료된 미션 정보
fun onProgressed(mission: Mission)
미션 진행 상태가 변경되었을 때 호출됩니다.
mission
진행 상태가 변경된 미션 정보
fun onRefreshed(unitId: String?)
미션 목록이 갱신되었을 때 호출됩니다.
unitId
갱신된 광고 유닛 ID (Optional)
Usage Example
Last updated