NowSDKConfiguration-Klasse – Android

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 1 Minute Lesedauer
  • Die NowSDKConfiguration -Klasse enthält Konfigurationsinformationen, die zum Initialisieren von NowSDK erforderlich sind.

    Tabelle : 1. Eigenschaften
    Name Typ Beschreibung
    Berechtigungsanbieter NowSDKAuthorizationBereitstellung Delegieren Sie das Objekt, das für die Bereitstellung von Autorisierungstoken für NowSDK auf Anforderung verantwortlich ist.
    logLevel NowLogLevel Ebene der Protokollnachrichten, die für die zugeordnete Protokollierung gespeichert werden sollen.
    Gültige Werte (Groß-/Kleinschreibung beachten):
    • Debuggen
    • Fehler
    • Schwerwiegend
    • Information
    • Keine
    BerechtigungDelegieren DevicePermissionDelegate

    Delegiertes Objekt, das vom NowSDK aufgerufen wird, um die Berechtigung von der Hostanwendung zum Anzeigen des Systemdialogfelds zum Anfordern der angegebenen Geräteberechtigung anzufordern.

    Zum Beispiel:
    override fun canRequestPermission(permission: DevicePermission): Boolean =
      when (permission) {
        DevicePermission.Camera -> true
        DevicePermission.Microphone -> false
      }
    }

    NowSDKConfiguration: NowSDKConfiguration(authorizationProvider: NowSDKAuthorizationProvidering, approvalDelegate: DevicePermissionDelegate, logLevel: NowLogLevel)

    Erstellt ein neues NowSDKConfiguration-Objekt.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Berechtigungsanbieter NowSDKAuthorizationBereitstellung Delegieren Sie das Objekt, das für die Bereitstellung von Autorisierungstoken für NowSDK auf Anforderung verantwortlich ist.
    BerechtigungDelegieren DevicePermissionDelegate

    Delegiertes Objekt, das vom NowSDK aufgerufen wird, um die Berechtigung von der Hostanwendung zum Anzeigen des Systemdialogfelds zum Anfordern der angegebenen Geräteberechtigung anzufordern.

    Zum Beispiel:
    override fun canRequestPermission(permission: DevicePermission): Boolean =
      when (permission) {
        DevicePermission.Camera -> true
        DevicePermission.Microphone -> false
      }
    }
    logLevel NowLogLevel Ebene der Protokollnachrichten, die für die zugeordnete Protokollierung gespeichert werden sollen.
    Gültige Werte (Groß-/Kleinschreibung beachten):
    • Debuggen
    • Fehler
    • Schwerwiegend
    • Information
    • Keine
    Tabelle : 3. Ausgabe
    Typ Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    class SampleApplication : Application(), NowSDKAuthorizationProviding, DevicePermissionDelegate {
    
        private val nowSdkSettings = NowSDKSettings(
            instanceBaseURL = "https://instance-name.service-now.com",
            clientId = "client_id",
            user = "user"
        )
    
        private val coroutineScope = CoroutineScope(Dispatchers.IO)
    
        private val nowSDKConfiguration = NowSDKConfiguration(this, this, NowLogLevel.Debug)
        override fun onCreate() {
            super.onCreate()
    
            NowSDK.configure(this, nowSDKConfiguration)
        }
    
    
        override fun requestAuthorization(
            instanceURL: URL,
            callback: Consumer<List<AuthorizationToken>?>
        ) {
            coroutineScope.launch {
                when {
                    nowSdkSettings.user.isNullOrBlank().not() -> authorizeWithJWT(
                        callback = callback,
                        user = nowSdkSettings.user,
                        clientId = nowSdkSettings.clientId
                    )
    
                    else -> authorizeWithGuest(callback = callback)
                }
            }
        }
    
        override fun canRequestPermission(permission: DevicePermission): Boolean {
            return true
        }
    }