NowSDK - Android

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 1 min. de leitura
  • A classe NowSDK é um singleton que fornece a API pública para o NowSDK. Esta classe é o gateway para todos os serviços de recurso do SDK Android.

    Antes de inicializar um serviço do recurso, você deve inicializar o próprio SDK chamando NowSDK.configure(). Para obter informações adicionais sobre como começar com o Android NowSDK, consulte o ServiceNow Mobile SDK Developers Guide - Android.

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

    Configura o NowSDK para uso.

    Você deve chamar esta função antes de tentar usar qualquer um dos serviços de recurso fornecidos pelo SDK.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Aplicação Aplicação Referência ao objeto da aplicação de hospedagem.
    configuração NowServiceConfiguration Objeto que contém as informações necessárias para inicializar o NowSDK.
    Tabela 2. Retorna
    Tipo Descrição
    Nenhum NowSDKError será gerado se a configuração fornecida for inválida.

    O exemplo de código a seguir mostra como chamar esta função.

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

    Limpa todas as sessões de usuário persistentes na memória.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 4. Retorna
    Tipo Descrição
    Nenhum

    O exemplo de código a seguir mostra como chamar esta função.

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