---
sourceDocument: 호주 API 참조
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/api-reference

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 API 참조

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowPushService 클래스 - Android

# NowPushService 클래스 - Android {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 5분

NowPushService 클래스는 푸시 알림 서비스와의 상호작용을 가능하게 하는 기능을 제공합니다.  
{#NowPushServiceAndroidAPI__table_vx2_klw_5pb__entry__2}

| 이름 | 설명 |
|-|-|
| 구성 | 서비스와 연결할 서비스 구성입니다. 데이터 유형: [NowServiceConfiguration](https://servicenow-prod.fluidtopics.net/NtuWyYK4RVRmN~CPbUxQYw "NowServiceConfiguration 클래스를 사용하면 기능 서비스의 인스턴스 URL 및 패키지 이름을 구성할 ServiceNow 수 있습니다.") |
[표 1. 속성]

{#NowPushServiceAndroidAPI__table_vx2_klw_5pb}

## NowPushService - handlePush(remoteMessage: RemoteMessage, successCallback: Consumer\<NowPushPayload\>, errorCallback: Consumer\<Throwable\>) {#ariaid-title2}

푸시 알림 요청을 처리합니다.
주:  
현재 유일하게 구현된 푸시 알림 유형은 `NowPushVirtualAgent`입니다. 다른 전달된 푸시 알림 유형은 [NotSupportedPushError](https://servicenow-prod.fluidtopics.net/e5enRTtd6Q7VcgEdPe1HeQ#NotSupportedPushErrorAndroidAPI "NowPushSDK가 푸시 알림 요청을 처리할 수 없으면 NotSupportedPushError 클래스의 함수가 throw됩니다. 이러한 유형의 오류가 발생하면 MobileSDK 프레임워크 외부에서 푸시 알림을 구문 분석하고 처리해야 합니다.") 객체를 반환합니다.
{#NPushServ-handlePush_S_O_O__table_aly_nvk_nrb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 원격 메시지 | [원격 메시지](https://firebase.google.com/docs/reference/android/com/google/firebase/messaging/RemoteMessage) | `com.google.firebase.messaging.FirebaseMessagingService.onMessageReceived에서 수신한 알림입니다.` 자세한 내용은 [Android 앱에서 메시지 수신을](https://firebase.google.com/docs/cloud-messaging/android/receive) 참조하세요. |
| 성공 콜백 | [소비자\<](https://developer.android.com/reference/kotlin/java/util/function/Consumer)[NowPushPayload](https://servicenow-prod.fluidtopics.net/LJ9FPc8iUDqjcL27y4xjjg#NowPushPayloadAndroidInterface "NowPushPayload 인터페이스는 NowSDK가 구현하는 푸시 알림 페이로드를 정의합니다.")\> | 처리된 NowPushPayload 대상을 반환할 콜백입니다. |
| 오류 콜백 | [소비자\<](https://developer.android.com/reference/kotlin/java/util/function/Consumer)[투구 가능](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | throw된 오류를 반환할 콜백입니다. [NotSupportedPushError](https://servicenow-prod.fluidtopics.net/e5enRTtd6Q7VcgEdPe1HeQ#NotSupportedPushErrorAndroidAPI "NowPushSDK가 푸시 알림 요청을 처리할 수 없으면 NotSupportedPushError 클래스의 함수가 throw됩니다. 이러한 유형의 오류가 발생하면 MobileSDK 프레임워크 외부에서 푸시 알림을 구문 분석하고 처리해야 합니다.") 오류가 발생하면 알림 유형이 모바일 SDK에서 지원되지 않으며 모바일 SDK 프레임워크 외부에서 처리해야 합니다. |
[표 2. 매개변수]

{#NPushServ-handlePush_S_O_O__table_aly_nvk_nrb} {#NPushServ-handlePush_S_O_O__table_bly_nvk_nrb__entry__2}

| 유형 | 설명 |
|-|-|
| 없음 |   |
[표 3. 반환]

{#NPushServ-handlePush_S_O_O__table_bly_nvk_nrb}  
이 예제에서는 onMessageReceived() 를 재정의하고 스루를 RemoteMessage`NowPushService`에 전달하는 방법을 보여줍니다. `NowPushService`가 알림 유형을 인식하면 요청을 처리하고 애플리케이션이 처리할 알림 객체를 반환합니다. 그렇지 않으면 [NotSupportedPushError](https://servicenow-prod.fluidtopics.net/e5enRTtd6Q7VcgEdPe1HeQ#NotSupportedPushErrorAndroidAPI "NowPushSDK가 푸시 알림 요청을 처리할 수 없으면 NotSupportedPushError 클래스의 함수가 throw됩니다. 이러한 유형의 오류가 발생하면 MobileSDK 프레임워크 외부에서 푸시 알림을 구문 분석하고 처리해야 합니다.") 가 발생합니다.

    override fun onMessageReceived(remodeeMessage: RemoteMessage){
      pushService.handlePush(remoteMessage, { push ->
        when (push) {
          is NowPushVirtualAgent → handleVirtualAgentPush(push)
        }, { error ->
            Log.e(TAG, "Unknown push", error)
            handleAppPushNotification(remoteMessage)
        })
    }

## NowPushService - registerPushToken(pushToken: String, pushApp: String, successCallback: 실행 가능, errorCallback: Consumer\<Throwable\>) {#ariaid-title3}

현재 Android 장치 및 지정된 애플리케이션에 대한 푸시 알림을 식별하는 데 사용되는 인스턴스에 ServiceNow 고유 Firebase 토큰을 등록합니다.
인스턴스가 ServiceNow 애플리케이션에서 알림을 받을 장치를 생성 Android 하려면 이 토큰을 등록해야 합니다.
{#NPushServ-registerPushToken_S_S_O_O__table_zhp_ccl_nrb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 푸시토큰 | 문자열 | Firebase[com.google.firebase.messaging.FirebaseMessaging.getToken](https://firebase.google.com/docs/reference/js/v8/firebase.messaging.Messaging#gettoken) 또는 [com.google.firebase.messaging.FirebaseMessagingService.onNewToken](https://firebase.google.com/docs/cloud-messaging/android/client)에서 검색된 토큰입니다. |
| 푸시앱 | 문자열 | 연결된 ServiceNow 인스턴스의 푸시 애플리케이션 테이블에 지정된 푸시 애플리케이션의 이름입니다. |
| 성공 콜백 | [실행 가능](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | 토큰 등록에 성공하면 콜백이 실행됩니다. |
| errorCallback | [소비자\<](https://developer.android.com/reference/kotlin/java/util/function/Consumer)[투구 가능](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | 토큰 등록에 실패할 때 실행되는 콜백입니다. |
[표 4. 매개변수]

{#NPushServ-registerPushToken_S_S_O_O__table_zhp_ccl_nrb} {#NPushServ-registerPushToken_S_S_O_O__table_a3p_ccl_nrb__entry__2}

| 유형 | 설명 |
|-|-|
| 없음 |   |
[표 5. 반환]

{#NPushServ-registerPushToken_S_S_O_O__table_a3p_ccl_nrb}  
이 예에서는 현재 Android 장치 및 애플리케이션 "PushAppName"에 대한 푸시 토큰을 등록합니다.

    FirebaseMessaging.getInstance().token.addOnCompleteListener { task ->
      val token = task.result

      if (!task.isSuccessful || token == null) {
        throw Exception("Unable to fetch token"))
      }

      pushService.registerPushToken(token, "PushAppName", {
        Log.v(TAG, "Successfully registered push token")
      }, { e ->
        Log.e(TAG, "Error registering push", e)
      })
    }

## NowPushService - unregisterPushToken(pushToken: String, pushApp: String, successCallback: 실행 가능, errorCallback: Consumer\<Throwable\>) {#ariaid-title4}

연결된 ServiceNow 인스턴스에 지정된 Firebase 푸시 토큰의 등록을 취소합니다.
{#NPushServ-unregPushToken_S_S_O_O__table_ywx_bgl_nrb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 푸시토큰 | 문자열 | Firebase 등록을 취소할 토큰입니다. [com.google.firebase.messaging.FirebaseMessaging.getToken](https://firebase.google.com/docs/reference/js/v8/firebase.messaging.Messaging#gettoken) 또는 [com.google.firebase.messaging.FirebaseMessagingService.onNewToken](https://firebase.google.com/docs/cloud-messaging/android/client)으로 검색됩니다. |
| 푸시앱 | 문자열 | 등록 취소할 토큰과 연결된 푸시 애플리케이션의 이름입니다. 이 정보는 연결된 ServiceNow 인스턴스의 푸시 애플리케이션 테이블에 저장됩니다. |
| 성공 콜백 | [실행 가능](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | 토큰 등록 취소에 성공하면 콜백이 실행됩니다. |
| erro rCallback | [소비자\<](https://developer.android.com/reference/kotlin/java/util/function/Consumer)[투구 가능](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | 토큰 등록 취소에 실패할 때 실행되는 콜백입니다. |
[표 6. 매개변수]

{#NPushServ-unregPushToken_S_S_O_O__table_ywx_bgl_nrb} {#NPushServ-unregPushToken_S_S_O_O__table_zwx_bgl_nrb__entry__2}

| 유형 | 설명 |
|-|-|
| 없음 |   |
[표 7. 반환]

{#NPushServ-unregPushToken_S_S_O_O__table_zwx_bgl_nrb}  
이 코드 예제에서는 사용자가 애플리케이션에서 로그아웃할 때와 같이 밀어넣기 토큰의 등록을 취소하는 방법을 보여 줍니다.

    pushService.unregisterPushtoken(token, "PushAppName", {
      Log.v(TAG, "Successfully unregistered push token")
    },  { e ->
      Log.e(TAG, "Error unregistering push", e)
    })


