Interface d’appel : Android

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 1 minute de lecture
  • L’interface d’appel représente une demande préparée pour traitement.

    Les options de traitement possibles sont les suivantes :
    • annuler
    • Enqueue
    • execute
    • carte

    Un objet d’appel ne peut pas être traité deux fois.

    Tableau 1. Propriétés
    Nom Type Description
    request Demande Demande d’origine à l’origine de cet appel.

    Appeler : cancel()

    Annule l’appel associé, si possible (dans la mesure du possible.)

    Tableau 2. Paramètres
    Nom Type Description
    Aucun
    Tableau 3. Renvoie
    Type Description
    Aucun

    L’exemple de code suivant montre comment appeler cette fonction.

    private var inFlightDataRequestCall: Call<*>? = null 
    fun cancelTransfer() = inFlightDataRequestCall?.cancel() 

    Appel : enqueue(onSuccess : Consumer<Response<T>>, onError : Consumer<NowDataError>)

    Planifie l’exécution de la demande dès que le système\thread est disponible pour exécuter cette demande.

    Tableau 4. Paramètres
    Nom Type Description
    onSuccess (en anglais) Consommateur<Réponse<T>> Rappel à exécuter en cas de réussite de l’appel. Réponse HTTP dont le corps est analysé selon le type de données spécifié par le T paramètre.
    Remarque :
    Consommateur est un type Java OOB pour la consommation asynchrone d’un objet. Dans ce cas, l’appel utilise generic pour renvoyer un type Response<T>T est le type d’objet.
    onError (en anglais seulement) Erreur<NowData> Rappel à exécuter en cas d’échec de l’appel.

    NowDataError (en anglais seulement)

    Tableau 5. Renvoie
    Type Description
    Aucun

    L’exemple de code suivant montre comment appeler cette fonction.

    fun makeGraphQLRequest(query: String) { 
      val call = graphQLService.graphQLRequest(query) 
      call.enqueue( 
        { response -> handleResponse(response) }, 
        { nowDataError -> handleError(nowDataError) } 
      ) 
    } 

    Appeler : execute()

    Invoque la demande immédiatement. Bloque jusqu’à ce que la réponse soit traitée ou qu’elle soit en erreur.

    Tableau 6. Paramètres
    Nom Type Description
    Aucun
    Tableau 7. Renvoie
    Type Description
    Réponse <T> Données de réponse au format défini dans le T paramètre.

    L’exemple de code suivant montre comment appeler cette fonction.

    val response = apiService.data(NowAPIService.Endpoint( 
      relativePath = CASES_API, 
      requestMethod = HttpMethod.GET, 
      requireAuth = true) 
    ).execute()