NowSDKConfiguration classe - Android

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 1 min. de leitura
  • . NowSDKConfiguration A classe contém informações de configuração necessárias para inicializar o NowSDK.

    Tabela 1. Propriedades
    Nome Tipo Descrição
    AuthorizationProvider NowSDKAuthorizationProviding Objeto delegado responsável por fornecer tokens de autorização ao NowSDK mediante solicitação.
    logLevel NowLogLevel Nível de mensagens de log para o agente de log associado armazenar.
    Valores válidos (diferencia maiúsculas de minúsculas):
    • Depurar
    • Erro
    • Fatal
    • Informação
    • Nenhum(a)
    PermissionDelegar DevicePermissionDelegate

    Objeto de delegado chamado pelo NowSDK para solicitar permissão da aplicação host para mostrar a caixa de diálogo do sistema para solicitar a permissão do dispositivo indicada.

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

    NowSDKConfiguration - NowSDKConfiguration(authorizationProvider: NowSDKAuthorizationProviding, permissionDelegate: DevicePermissionDelegate, loglevel: NowLogLevel)

    Cria um novo objeto NowSDKConfiguration.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    AuthorizationProvider NowSDKAuthorizationProviding Objeto delegado responsável por fornecer tokens de autorização ao NowSDK mediante solicitação.
    PermissionDelegar DevicePermissionDelegate

    Objeto de delegado chamado pelo NowSDK para solicitar permissão da aplicação host para mostrar a caixa de diálogo do sistema para solicitar a permissão do dispositivo indicada.

    Por exemplo:
    override fun canRequestPermission(permission: DevicePermission): Boolean =
      when (permission) {
        DevicePermission.Camera -> true
        DevicePermission.Microphone -> false
      }
    }
    logLevel NowLogLevel Nível de mensagens de log para o agente de log associado armazenar.
    Valores válidos (diferencia maiúsculas de minúsculas):
    • Depurar
    • Erro
    • Fatal
    • Informação
    • Nenhum(a)
    Tabela 3. Retornos
    Tipo Descrição
    Nenhum(a)

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