NowSDK : Android

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 1 minute de lecture
  • La classe NowSDK est un singleton qui fournit l’API publique pour le NowSDK. Cette classe est la passerelle vers tous les Android services d’entités du Kit de développement logiciel (SDK).

    Avant d’initialiser un service de fonctionnalités, 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 Guide du ServiceNow développeur du Kit de développement logiciel (SDK) mobile : Android.

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

    Configure le NowSDK en vue de son utilisation.

    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
    Aucun 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 en mémoire toutes les sessions utilisateur conservées.

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

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