Classe NowWebService : Android

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 2 minutes de lecture
  • L’API NowWebService fournit une fonction qui lance une NowWebActivity qui héberge une vue Web.

    Tableau 1. Propriétés
    Nom Type Description
    configuration Classe NowServiceConfiguration : Android Informations de configuration pour le service associé, telles que l’URL de l’instance ServiceNow et le nom du package.

    NowWebService : launch(context : Context, url : URL, nowWebTheme : NowWebTheme)

    Crée une NowWebActivity qui héberge la vue Web.

    Tableau 2. Paramètres
    Nom Type Description
    contexte Contexte Contexte à utiliser pour lancer l’activité associée.
    URL URL URL de la page Web à charger. Cette page Web doit se trouver sur l’instance cible ServiceNow avec laquelle le service a été initialisé.
    nowWebTheme NowWebTheme Facultatif. Objet NowWebTheme à appliquer aux éléments d’interface utilisateur du contrôleur de vue.

    Par défaut : thème par défaut

    Tableau 3. Renvoie
    Type Description
    Aucun

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

    suspend fun launchNowWeb() {
        val webService = getNowWebService()
    
        val webTheme = object : NowWebTheme {
            override val brand: Int
                get() = Color.BLUE
    
            override val textPrimary: Int
                get() = Color.BLACK
    
            //Override remaining theme colors
        }
        webService?.launch(activity, URL("https://instance-name.service-now.com"), webTheme)
    }

    NowWebService – preloadWebCache(preloadUris : List<URI>)

    Précharge une liste de java.net.URI spécifiés dans une vue web sans en-tête pour préremplir le cache de la vue web avec des ressources pouvant être mises en cache sur la page.

    Remarque :
    La complétion de cet appel de fonction est basée sur l’appel de onPageFinished() dans la vue web, ce qui ne prend pas en compte les redirections ou les ressources sur la page. Pour cette raison, le préchargement peut ne pas être entièrement terminé lors du retour de cette méthode.
    Tableau 4. Paramètres
    Nom Type Description
    preloadUris Liste Liste des java.net.URI à précharger. Tous les java.net.URI doivent être relatifs ou correspondre à l’hôte actuel configuré dans le NowSDK.
    Tableau 5. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment utiliser la fonction webService.preloadWebCache() pour précharger la page mesp .

    suspend fun preloadNowWeb() {
      val webService = serviceProvider.webService()
      webService.preloadWebCache(
        listOf(
          URI("mesp")
        )
      )
    }

    NowWebService – updateTheme(nowWebTheme : NowWebTheme)

    Met à jour le thème de l’interface utilisateur NowWeb avec le thème d’interface utilisateur spécifié. Utilisez cette fonction pour mettre à jour le thème de l’interface utilisateur Web après qu’il ait été initialement défini à l’aide de la fonction launch( ), par exemple lors du changement du thème de clair à foncé.

    Tableau 6. Paramètres
    Nom Type Description
    nowWebTheme NowWebTheme Objet NowWebTheme à appliquer aux éléments d’interface utilisateur du contrôleur de vue.
    Tableau 7. Renvoie
    Type Description
    Aucun

    L’exemple de code suivant montre comment mettre à jour un thème d’interface utilisateur clair implémenté à l’aide de la fonction launch() vers un thème d’interface utilisateur sombre à l’aide de la fonction updateTheme( ).

    val webService = getNowWebService()
    
    val lightTheme = object : NowWebTheme {
        override val brand: Int
            get() = Color.BLUE
    
        override val textPrimary: Int
            get() = Color.BLACK
    
        override val backgroundPrimary: Int
            get() = Color.WHITE
    
        // Override remaining theme colors
    }
    
    val darkTheme = object : NowWebTheme {
        override val brand: Int
            get() = Color.BLUE
    
        override val textPrimary: Int
            get() = Color.WHITE
    
        override val backgroundPrimary: Int
            get() = Color.BLACK
    
        // Override remaining theme colors
    }
    
    //launch NowWeb with light theme
    webService?.launch(activity, URL("https://instance-name.service-now.com"), lightTheme)
    
    //update NowWeb with dark theme
    webService?.updateTheme(darkTheme)