---
sourceDocument: Xanadu-API-Referenz
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - de-DE

ft:publication_title :

    - Xanadu-API-Referenz

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowPushService-Klasse -- Android

# NowPushService-Klasse -- Android {#ariaid-title1}

* Freigeben Version: Xanadu
* 
* Aktualisiert 1. August 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 Minuten Lesedauer

Die Klasse NowPushService stellt Funktionen bereit, die die Interaktion mit dem Push-Benachrichtigungsservice ermöglichen.
{#NowPushServiceAndroidAPI__table_vx2_klw_5pb__entry__2}

| Name | Beschreibung |
|-|-|
| konfigurieren | Servicekonfiguration, die dem Service zugeordnet werden soll. Datentyp: [NowServiceConfiguration](https://servicenow-prod.fluidtopics.net/WaSp8v90tmV2TQkVQvCJQw "Mit der Klasse NowServiceConfiguration können Sie die Instanz-URL ServiceNow und den Paketnamen für einen Funktionsservice konfigurieren.") |
[Tabelle : 1. Eigenschaften]

{#NowPushServiceAndroidAPI__table_vx2_klw_5pb}

## NowPushService -- handlePush(remoteMessage: RemoteMessage, erfolgreichCallback: Verbraucher\<NowPushPayload\> , FehlerRückruf: Verbraucher\<Throwable\> ) {#ariaid-title2}

Verarbeitet eine Push-Benachrichtigungsanforderung.
Hinweis:  
Derzeit ist `NowPushVirtualAgent`der einzige implementierte Push-Benachrichtigungstyp. Jeder andere übergebene Push-Benachrichtigungstyp gibt ein [NotSupportedPushError-](https://servicenow-prod.fluidtopics.net/Rn2ksrk8xUS3tjaHZJpGqA#NotSupportedPushErrorAndroidAPI "Eine Funktion aus der NotSupportedPushError -Klasse wird ausgelöst, wenn NowPushSDK die Push-Benachrichtigungsanforderung nicht verarbeiten kann. Wenn diese Art von Fehler ausgelöst wird, müssen Sie die Push-Benachrichtigung außerhalb des MobileSDK-Frameworks analysieren und verarbeiten.") Objekt zurück.
{#NPushServ-handlePush_S_O_O__table_aly_nvk_nrb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| Remote-Nachricht | [Remote-Nachricht](https://firebase.google.com/docs/reference/android/com/google/firebase/messaging/RemoteMessage) | Benachrichtigung gemäß Empfang durch `com.google.firebase.messaging.FirebaseMessagingService.onMessageReceived`. Weitere Informationen finden Sie unter [Nachrichten in einer Android-App empfangen](https://firebase.google.com/docs/cloud-messaging/android/receive). |
| erfolgreicher Rückruf | [Verbraucher](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[NowPushPayload](https://servicenow-prod.fluidtopics.net/GqSFPwmkM9XIQCrYew6mFw#NowPushPayloadAndroidInterface "Die NowPushPayload- Schnittstelle definiert die Nutzlast der Push-Benachrichtigung, die das NowSDK implementiert.")\> | Rückruf, um den verarbeiteten NowPushPayload an zurückzugeben. |
| Fehler „Rückruf". | [Verbraucher](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[Auswerfbar](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | Rückruf, um den ausgelösten Fehler an zurückzugeben. Wenn der Fehler [NotSupportedPushError](https://servicenow-prod.fluidtopics.net/Rn2ksrk8xUS3tjaHZJpGqA#NotSupportedPushErrorAndroidAPI "Eine Funktion aus der NotSupportedPushError -Klasse wird ausgelöst, wenn NowPushSDK die Push-Benachrichtigungsanforderung nicht verarbeiten kann. Wenn diese Art von Fehler ausgelöst wird, müssen Sie die Push-Benachrichtigung außerhalb des MobileSDK-Frameworks analysieren und verarbeiten.") ausgelöst wird, wird der Benachrichtigungstyp vom Mobile SDK nicht unterstützt und muss außerhalb des Mobile SDK-Frameworks verarbeitet werden. |
[Tabelle : 2. Parameter]

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

| Typ | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 3. Ergebnisse]

{#NPushServ-handlePush_S_O_O__table_bly_nvk_nrb}  
In diesem Beispiel wird gezeigt, wie onMessageReceived() überschrieben und RemoteMessage an `NowPushService übergeben wird`. Wenn `NowPushService` den Benachrichtigungstyp erkennt, verarbeitet er die Anforderung und gibt das Benachrichtigungsobjekt zurück, damit die Anwendung verarbeiten kann. Andernfalls wird der [NotSupportedPushError ausgelöst](https://servicenow-prod.fluidtopics.net/Rn2ksrk8xUS3tjaHZJpGqA#NotSupportedPushErrorAndroidAPI "Eine Funktion aus der NotSupportedPushError -Klasse wird ausgelöst, wenn NowPushSDK die Push-Benachrichtigungsanforderung nicht verarbeiten kann. Wenn diese Art von Fehler ausgelöst wird, müssen Sie die Push-Benachrichtigung außerhalb des MobileSDK-Frameworks analysieren und verarbeiten.").

    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 -- registrierenPushToken(pushToken: Zeichenfolge, pushApp: Zeichenfolge, erfolgreichCallback: Ausführbar, errorCallback: Verbraucher\<Throwable\> ) {#ariaid-title3}

Registriert ein eindeutiges Firebase -Token bei der ServiceNow -Instanz, das zur Identifizierung der Push-Benachrichtigungen für das aktuelle Android -Gerät und die angegebene Anwendung verwendet wird.
Damit die Instanz \[ ServiceNow Benachrichtigungen generieren kann, muss das Android -Gerät registriert sein, um Benachrichtigungen von der Anwendung zu erhalten. Dieses Token muss registriert werden.
{#NPushServ-registerPushToken_S_S_O_O__table_zhp_ccl_nrb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| pushToken | Zeichenfolge | Firebase Token abgerufen von entweder [com.google.firebase.messaging.FirebaseMessaging.getToken](https://firebase.google.com/docs/reference/js/v8/firebase.messaging.Messaging#gettoken) oder [com.google.firebase.messaging.FirebaseMessagingService.onNewToken](https://firebase.google.com/docs/cloud-messaging/android/client). |
| pushApp | Zeichenfolge | Name der Push-Anwendung, wie in der Tabelle „Push-Anwendung" in der zugehörigen Instanz ServiceNow angegeben. |
| erfolgreicher Rückruf | [Ausführbar](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | Rückruf, der ausgeführt wird, wenn die Tokenregistrierung erfolgreich ist. |
| Fehler Rückruf | [Verbraucher](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[Auswerfbar](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | Rückruf, der ausgeführt wird, wenn die Tokenregistrierung fehlschlägt. |
[Tabelle : 4. Parameter]

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

| Typ | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 5. Ergebnisse]

{#NPushServ-registerPushToken_S_S_O_O__table_a3p_ccl_nrb}  
In diesem Beispiel wird ein Push-Token für das aktuelle Gerät Android und die Anwendung „PushAppName" registriert.

    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: Zeichenfolge, pushApp: Zeichenfolge, erfolgreichCallback: Ausführbar, errorCallback: Verbraucher\<Throwable\> ) {#ariaid-title4}

Hebt die Registrierung des angegebenen Firebase -Push-Tokens bei der zugehörigen ServiceNow -Instanz auf.
{#NPushServ-unregPushToken_S_S_O_O__table_ywx_bgl_nrb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| pushToken | Zeichenfolge | Firebase Token zum Aufheben der Registrierung. Wird entweder von [com.google.firebase.messaging.FirebaseMessaging.getToken](https://firebase.google.com/docs/reference/js/v8/firebase.messaging.Messaging#gettoken) oder [com.google.firebase.messaging.FirebaseMessagingService.onNewToken abgerufen](https://firebase.google.com/docs/cloud-messaging/android/client) |
| pushApp | Zeichenfolge | Name der Push-Anwendung, die dem Token zugeordnet ist, um die Registrierung aufzuheben. Diese Informationen werden in der Tabelle „Push-Anwendung" in der zugehörigen Instanz ServiceNow gespeichert. |
| erfolgreicher Rückruf | [Ausführbar](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | Rückruf, der ausgeführt wird, wenn die Token-Aufhebung der Registrierung erfolgreich ist. |
| Fehler rCallback | [Verbraucher](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[Auswerfbar](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | Rückruf, der ausgeführt wird, wenn die Aufhebung der Tokenregistrierung fehlschlägt. |
[Tabelle : 6. Parameter]

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

| Typ | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 7. Ergebnisse]

{#NPushServ-unregPushToken_S_S_O_O__table_zwx_bgl_nrb}  
Dieses Codebeispiel zeigt, wie die Registrierung eines Push-Tokens aufgehoben wird, z. B. wenn sich der Benutzer von der Anwendung abmeldet.

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


