Classe NowWebService : iOS
La classe NowWebService fournit des fonctions qui permettent de parcourir les pages Web sur une ServiceNow instance.
| Nom | Type | Description |
|---|---|---|
| configuration | NowServiceConfiguration | Paramètres de configuration à utiliser lors de l’initialisation de l’instance NowWebService |
NowWebService : init(configuration : NowServiceConfiguration, coreServiceProvider : NowCoreServiceProviding ? = nil)
Initialise une instance de NowWebService.
| Nom | Type | Description |
|---|---|---|
| configuration | NowServiceConfiguration | Paramètres de configuration à utiliser lors de l’initialisation de l’instance NowWebService |
| coreServiceProvider | NowCoreServiceProviding | Facultatif. Fournisseur de service à associer à l’instance NowWebService. Valeur par défaut : néant |
L’exemple de code suivant montre comment appeler cette méthode.
guard let coreService = NowSDK.core() else {
// Error with NowServiceError.sdkNotConfigured
return
}
guard
let instanceUrl = URL(string: "http://sample.service-now.com") ,
let serviceConfig = NowSDK.makeServiceConfiguration(for: instanceUrl) else {
// Could not create service –
// NowServiceError.serviceConfigurationInvalid
return
}
let webService = NowWebService(configuration: serviceConfig, coreServiceProvider: coreService)
NowWebService : makeWebViewController(pour url : URL, délégué : NowWebViewControllerDelegate, thème : NowWebThemeable)
Crée un objet UIViewController qui héberge la vue Web.
| Nom | Type | Description |
|---|---|---|
| pour l’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é. |
| délégué | NowWebViewControllerDelegate | Facultatif. Objet qui reçoit les événements de rappel du WebViewController vers l’application native. |
| thème | NowWebThemeable | Facultatif. NowUIThemeable Protocole à appliquer aux éléments d’interface utilisateur du contrôleur d’affichage, tels que la couleur. Par défaut : NowWebDefaultTheme(nowUITheme : NowUIDefaultTheme()) |
| Type | Description |
|---|---|
| Résultat <NowWebViewController, NowWebServiceError> | Réussite : objet NowWebViewController Échec : objet NowWebServiceError |
private func webViewController(for url: URL) -> NowWebViewController? {
guard let webService = webService else {
debugPrint("Web service not initialized")
return nil
}
let result = webService.makeWebViewController(for: url, delegate: self, theme: CarrascoWebTheme(nowUITheme: CarrascoTheme()))
switch result {
case .success(let viewController):
return viewController
case .failure(let error):
debugPrint("Web view creation failed with error: \(error.localizedDescription)")
}
return nil
}
NowWebService : preloadWebCache(urls : [URL], complétion : PreloadWebCacheCompletion ? = nil) lève
Précharge une liste de pages spécifiées avec des ressources pouvant être mises en cache en arrière-plan (par Now Web) pour améliorer les temps de chargement initiaux.
| Nom | Type | Description |
|---|---|---|
| URL | Tableau d’objets d’URL | URL des pages à précharger. |
| achèvement | PréloadWebCacheCompletion | Facultatif. Fermeture pour informer l’appelant que le chargement des pages Web est terminé. |
| Type | Description |
|---|---|
| Néant |
L’exemple suivant montre comment utiliser la fonction webService.preloadWebCache() pour précharger des pages spécifiées.
private func preloadURLs(urls: [URL]) {
guard let webService = webService else {
debugPrint("Web service not initialized")
return
}
do {
try webService.preloadWebCache(urls: urls) {
debugPrint("URLs did complete preloading")
}
} catch {
debugPrint(error.localizedDescription)
}
}