---
sourceDocument: Référence de l’API Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Référence de l’API Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Classe NowPushService : Android

# Classe NowPushService : Android {#ariaid-title1}

* Rversion finale: Xanadu
* 
* Mis à jour 1 août 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes de lecture

La classe NowPushService fournit des fonctions qui activent l'interaction avec le service de notification push.
{#NowPushServiceAndroidAPI__table_vx2_klw_5pb__entry__2}

| Nom | Description |
|-|-|
| configuration | Configuration du service à associer au service. Type de données : [NowServiceConfiguration](https://servicenow-prod.fluidtopics.net/cw95tRreqlkfNCknivurbQ "La classe NowServiceConfiguration vous permet de configurer l’URL d’instance et le nom du ServiceNow package d’un service de fonctionnalités.") |
[Tableau 1. Propriétés]

{#NowPushServiceAndroidAPI__table_vx2_klw_5pb}

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

Traite une demande de notification push.
Remarque :  
Actuellement, le seul type de notification push implémenté est `NowPushVirtualAgent`. Tout autre type de notification push transmis renvoie un objet [NotSupportedPushError](https://servicenow-prod.fluidtopics.net/1v5erGNYUqjg4oq4VzY5vQ#NotSupportedPushErrorAndroidAPI "Une fonction de la classe NotSupportedPushError est levée lorsque NowPushSDK ne peut pas traiter la demande de notification push. Lorsque ce type d’erreur est généré, vous devez analyser et gérer la notification push en dehors du cadre de travail MobileSDK.") .
{#NPushServ-handlePush_S_O_O__table_aly_nvk_nrb__entry__3}

| Nom | Type | Description |
|-|-|-|
| Message à distance | [Message à distance](https://firebase.google.com/docs/reference/android/com/google/firebase/messaging/RemoteMessage) | Notification telle que reçue par `com.google.firebase.messaging.FirebaseMessagingService.onMessageReceived`. Pour plus d'informations, voir [Recevoir des messages dans une application Android](https://firebase.google.com/docs/cloud-messaging/android/receive). |
| Rappel de réussite | [Consommateur](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[NowPushPayload](https://servicenow-prod.fluidtopics.net/l183aHWQp0gy_ZpHpM5alw#NowPushPayloadAndroidInterface "L’interface NowPushPayload définit la charge utile des notifications push que le NowSDK implémente.")\> | Rappel pour renvoyer le traitement NowPushPayload à. |
| Rappel d'erreur | [Consommateur](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[jetable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | Rappel pour renvoyer l'erreur levée. Si l'erreur [NotSupportedPushError](https://servicenow-prod.fluidtopics.net/1v5erGNYUqjg4oq4VzY5vQ#NotSupportedPushErrorAndroidAPI "Une fonction de la classe NotSupportedPushError est levée lorsque NowPushSDK ne peut pas traiter la demande de notification push. Lorsque ce type d’erreur est généré, vous devez analyser et gérer la notification push en dehors du cadre de travail MobileSDK.") est générée, le type de notification n'est pas pris en charge par le Kit de développement logiciel (SDK) mobile et doit être traitée en dehors du cadre de travail du Kit de développement logiciel (SDK) mobile. |
[Tableau 2. Paramètres]

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

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 3. Renvoie]

{#NPushServ-handlePush_S_O_O__table_bly_nvk_nrb}  
Cet exemple montre comment surcharger onMessageReceived() et transmettre le RemoteMessage via à `NowPushService`. Si `NowPushService` reconnaît le type de notification, il traite la demande et renvoie l'objet de notification que l'application doit gérer. Sinon, il lève la [valeur NotSupportedPushError](https://servicenow-prod.fluidtopics.net/1v5erGNYUqjg4oq4VzY5vQ#NotSupportedPushErrorAndroidAPI "Une fonction de la classe NotSupportedPushError est levée lorsque NowPushSDK ne peut pas traiter la demande de notification push. Lorsque ce type d’erreur est généré, vous devez analyser et gérer la notification push en dehors du cadre de travail 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 : chaîne, pushApp : chaîne, successCallback : runnable, errorcallback : Consumer\<Throwable\>) {#ariaid-title3}

Enregistre un jeton unique Firebase avec l'instance ServiceNow utilisée pour identifier les notifications push pour l'appareil actuel Android et l'application spécifiée.
Pour que l'instance génère des notificationsAndroid, l'appareil ServiceNow reçoit des notifications de l'application, ce jeton doit être enregistré.
{#NPushServ-registerPushToken_S_S_O_O__table_zhp_ccl_nrb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pushToken (en anglais seulement) | Chaîne | Firebase Jeton récupéré par [com.google.firebase.messaging.FirebaseMessaging.getToken](https://firebase.google.com/docs/reference/js/v8/firebase.messaging.Messaging#gettoken) ou [com.google.firebase.messaging.FirebaseMessagingService.onNewToken](https://firebase.google.com/docs/cloud-messaging/android/client). |
| application push | Chaîne | Nom de l'application push tel que spécifié dans la table Application push sur l'instance associée ServiceNow . |
| Rappel de réussite | [Exécutable](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | Rappel exécuté lorsque l'enregistrement du jeton est réussi. |
| errorCallback (en anglais seulement) | [Consommateur](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[jetable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | Rappel exécuté lorsque l'enregistrement du jeton échoue. |
[Tableau 4. Paramètres]

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

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 5. Renvoie]

{#NPushServ-registerPushToken_S_S_O_O__table_a3p_ccl_nrb}  
Cet exemple enregistre un jeton push pour l'appareil actuel Android et l'application \<\< 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 : chaîne, pushApp : chaîne, successCallback : exécutable, errorCallback : Consumer\<Throwable\>) {#ariaid-title4}

Annule l'inscription du jeton push spécifié Firebase auprès de l'instance associée ServiceNow .
{#NPushServ-unregPushToken_S_S_O_O__table_ywx_bgl_nrb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pushToken (en anglais seulement) | Chaîne | Firebase jeton pour annuler l'inscription. Récupéré par [com.google.firebase.messaging.FirebaseMessaging.getToken](https://firebase.google.com/docs/reference/js/v8/firebase.messaging.Messaging#gettoken) ou [com.google.firebase.messaging.FirebaseMessagingService.onNewToken](https://firebase.google.com/docs/cloud-messaging/android/client). |
| application push | Chaîne | Nom de l'application push associée au jeton à désinscrire. Ces informations sont stockées dans la table Application push de l'instance associée ServiceNow . |
| Rappel de réussite | [Exécutable](https://developer.android.com/reference/kotlin/java/lang/Runnable.html) | Rappel exécuté lorsque l'annulation de l'inscription du jeton est réussie. |
| erro rCallback | [Consommateur](https://developer.android.com/reference/kotlin/java/util/function/Consumer) \<[jetable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/)\> | Rappel exécuté lorsque la désinscription du jeton échoue. |
[Tableau 6. Paramètres]

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

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 7. Renvoie]

{#NPushServ-unregPushToken_S_S_O_O__table_zwx_bgl_nrb}  
Cet exemple de code montre comment annuler l'inscription d'un jeton push, par exemple lorsque l'utilisateur se déconnecte de l'application.

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


