NowWebService-Klasse – iOS
Die Klasse NowWebService stellt Funktionen bereit, die das Durchsuchen von Webseiten in einer Instanz ServiceNow ermöglichen.
| Name | Typ | Beschreibung |
|---|---|---|
| konfigurieren | NowServiceKonfiguration | Konfigurationsparameter, die beim Initialisieren der NowWebService-Instanz verwendet werden sollen. |
NowWebService – init(configuration: NowServiceConfiguration, coreServiceProvider: NowCoreServiceProvider? = nil)
Initialisiert eine NowWebService-Instanz.
| Name | Typ | Beschreibung |
|---|---|---|
| konfigurieren | NowServiceKonfiguration | Konfigurationsparameter, die beim Initialisieren der NowWebService-Instanz verwendet werden sollen. |
| coreServiceProvider | NowCoreServicebereitstellung | Optional. Service Provider, der der NowWebService-Instanz zugeordnet werden soll. Standard: null |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
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(für URL: URL, Delegierter: NowWebViewControllerDelegate, Thema: NowWebThemeable)
Erstellt ein UIViewController-Objekt, das die Webansicht hostet.
| Name | Typ | Beschreibung |
|---|---|---|
| für URL | URL | URL der zu ladenden Webseite. Diese Webseite muss sich auf der Zielinstanz ServiceNow befinden, mit der der Service initialisiert wurde. |
| Delegierter | NowWebViewControllerDelegierter | Optional. Objekt, das Rückrufereignisse vom WebViewController in die native Anwendung empfängt. |
| Thema | NowWebThemeable | Optional. NowUIThemeable-Protokoll, das auf die UI-Elemente des Ansichts-Controllers angewendet werden soll, z. B. Farbe. Standard: NowWebDefaultTheme(nowUITheme: NowUIDefaultTheme()) |
| Typ | Beschreibung |
|---|---|
| Ergebnis<NowWebViewController, NowWebServiceError> | Erfolg: NowWebViewController-Objekt Fehler: NowWebServiceError-Objekt |
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], abgeschlossen: PreloadWebCacheCompletion? = nil) löst aus
Lädt eine Liste der angegebenen Seiten mit zwischenspeicherbaren Ressourcen im Hintergrund (von NowWeb), um die anfänglichen Ladezeiten zu verkürzen.
| Name | Typ | Beschreibung |
|---|---|---|
| URLs | Array von URL-Objekten | URLs der vorab zu ladenden Seiten |
| Abschluss | PreloadWebCacheCompletion | Optional. Schließen, um den Anrufer zu informieren, dass die Webseiten geladen wurden. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie mit der Funktion webService.preloadWebCache() angegebene Seiten vorab laden.
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)
}
}