NowSDK – Android

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 1 Minute Lesedauer
  • Die NowSDK -Klasse ist ein Singleton, der die öffentliche API für NowSDK bereitstellt. Diese Klasse ist das Gateway zu allen Android SDK-Funktionsservices.

    Bevor Sie einen Feature-Service initialisieren, müssen Sie das SDK selbst initialisieren, indem Sie NowSDK.configure()aufrufen. Weitere Informationen zu den ersten Schritten mit Android NowSDK finden Sie im ServiceNow Mobile SDK-Entwicklerleitfaden – Android.

    NowSDK –configure(application: Application, configuration: NowSDKConfiguration)

    Konfiguriert das NowSDK für die Verwendung.

    Sie müssen diese Funktion aufrufen, bevor Sie versuchen, einen der vom SDK bereitgestellten Funktionsservices zu verwenden.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Anwendung Anwendung Verweis auf das Hosting-Anwendungsobjekt.
    konfigurieren NowServiceConfiguration Objekt, das die zum Initialisieren des NowSDK erforderlichen Informationen enthält.
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    Keine NowSDKError wird ausgelöst, wenn die angegebene Konfiguration ungültig ist.

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

    NowSDK – Logout()

    Löscht alle im Speicher gespeicherten Benutzersitzungen.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    class SampleApplication : Application() {
    
        private val nowSDKConfiguration = NowSDKConfiguration(authorizationProvider, permissionDelegate, NowLogLevel.Debug)
    
        override fun onCreate() {
            super.onCreate()
            NowSDK.configure(this, nowSDKConfiguration)
        }
    
        fun logout() {
            // Clear all user session when an application resets the user session
            NowSDK.logout()
        }
    }