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

value
설명

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