NowSDKConfiguration-Klasse – Android

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 1 Minute Lesedauer
  • Die NowSDKConfiguration -Klasse enthält Konfigurationsinformationen, die zum Initialisieren des NowSDK erforderlich sind.

    Tabelle : 1. Eigenschaften
    Name Typ Beschreibung
    Berechtigungsanbieter NowSDKAuthorizationBereitstellung Delegiertes 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
    • Info
    • Keine
    permissionDelegate DevicePermissionDelegate

    Delegiertes Objekt, das von NowSDK aufgerufen wird, um die Berechtigung von der Hostanwendung anzufordern und den Systemdialog zum Anfordern der angegebenen Geräteberechtigung anzuzeigen.

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

    NowSDKConfiguration – NowSDKConfiguration(authorizationProvider: NowSDKAuthorizationbereitstellung, permissionDelegate: DevicePermissionDelegate, logLevel: NowLogLevel)

    Erstellt ein neues NowSDKConfiguration-Objekt.

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

    Delegiertes Objekt, das von NowSDK aufgerufen wird, um die Berechtigung von der Hostanwendung anzufordern und den Systemdialog zum Anfordern der angegebenen Geräteberechtigung anzuzeigen.

    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
    • Info
    • 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
        }
    }