Kit de développement logiciel (SDK) Now - Android

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 1 minute de lecture
  • La classe NowSDK est un singleton qui fournit l’API publique pour le NowSDK. Cette classe est la passerelle d’accès à tous les Android services de fonctionnalité du Kit de développement logiciel (SDK).

    Avant d’initialiser un service de fonctionnalité, vous devez initialiser le Kit de développement logiciel (SDK) lui-même en appelant NowSDK.configure(). Pour plus d’informations sur la prise en main du Android NowSDK, consultez le ServiceNow Guide du développeur du Kit de développement logiciel (SDK) Mobile - Android.

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

    Configure le NowSDK pour l’utiliser.

    Vous devez appeler cette fonction avant d’essayer d’utiliser l’un des services de fonctionnalité fournis par le Kit de développement logiciel (SDK).

    Tableau 1. Paramètres
    Nom Type Description
    l'application Application Référence à l’objet de l’application d’hébergement.
    configuration Configuration Now ServiceConfiguration Objet contenant les informations nécessaires pour initialiser le NowSDK.
    Tableau 2. Renvoie
    Type Description
    Néant NowSDKError est levé si la configuration fournie n’est pas valide.

    L’exemple de code suivant montre comment appeler cette fonction.

    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()

    Efface toutes les sessions utilisateur conservées en mémoire.

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    Néant

    L’exemple de code suivant montre comment appeler cette fonction.

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