Classe NowSDKConfiguration - Android

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

    Tabela 1. Propriedades
    Nome Tipo Descrição
    ProvedorDeAutorização NowSDKAutorizaçãoProviding Objeto delegado que é 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ções
    • Nenhum(a)
    permissãoDelegado DevicePermissionDelegate

    Delegue o objeto 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: NowSDKAutorizationProviding, permissionDelegate: DevicePermissionDelegate, logLevel: NowLogLevel)

    Cria um novo objeto NowSDKConfiguration.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    ProvedorDeAutorização NowSDKAutorizaçãoProviding Objeto delegado que é responsável por fornecer tokens de autorização ao NowSDK mediante solicitação.
    permissãoDelegado DevicePermissionDelegate

    Delegue o objeto 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ções
    • Nenhum(a)
    Tabela 3. Retorna
    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
        }
    }