Interface NowChatSdkCallbacks - Android

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 2 min. de leitura
  • A interface NowChatSdkCallbacks fornece funções que permitem retornos de chamada para aplicações host para configurar ou lidar com ações do NowChatSDK.

    Tabela 1. Propriedades
    Nome Tipo Descrição
    isFileCollectionBlocked Booliano Sinalizador que indica se a aplicação host deve impedir que o NowChat abra o seletor de arquivos.
    Valores válidos:
    • verdadeiro: impede a abertura do seletor de arquivos.
    • falso: permite que o seletor de arquivos seja aberto.
    isGalloryCollectionBlocked Booliano Sinalizador que indica se a aplicação do host deve impedir que o NowChat abra a galeria de fotos.
    Valores válidos:
    • verdadeiro: impede a abertura da galeria de fotos.
    • falso: permite que a galeria de fotos seja aberta.
    isLocationCollectionBlocked Booliano Sinalizador que indica se a aplicação host deve impedir que o NowChat acesse o posicionamento de geolocalização.
    Valores válidos:
    • verdadeiro: impede o acesso ao posicionamento de geolocalização.
    • falso: não impede o acesso ao posicionamento de geolocalização.
    isCollection Bloqueado Booliano Sinalizador que indica se a aplicação do host deve impedir que o NowChat acesse a câmera.
    Valores válidos:
    • verdadeiro: impede o acesso à câmera.
    • falso: não impede o acesso à câmera.

    NowChatSdkCallbacks - loadUri(uri: Uri, context: Context)

    Manipula o URI especificado, como para abri-lo em uma exibição da web, guia personalizada ou navegador externo.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    URI URI URI a ser aberto.
    contexto Contexto Contexto da aplicação.
    Tabela 3. Retorna
    Tipo Descrição
    Nenhum

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

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun loadUri(uri: Uri, context: Context) {
    
        // Open the uri in a webview
        val webview = WebView(context)
        webview.loadUrl(uri.toString())
      }
    
      // Override other methods
    }

    NowChatSdkCallbacks - onExit(exitCode: NowChatExitCode)

    Define o código de resultado a ser retornado quando o NowChat é encerrado.

    Este retorno de chamada é acionado quando o bate-papo em tela cheia é fechado e o usuário é retornado à aplicação host.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    exitCode Código de saída do NowChat Motivo para sair do NowChat.
    Valores válidos:
    • ChatPluginNotInstalledError: o plug-in de bate-papo não está instalado na instância.
    • SessionInitializationError: não é possível inicializar a sessão com a instância.
    • Saída do usuário: o usuário saiu usando o botão para cima ou o botão voltar
    • Desconhecido: qualquer motivo desconhecido.
    Tabela 5. Retorna
    Tipo Descrição
    Nenhum

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

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
    
      override fun onExit(exitCode: NowChatExitCode) {
        when (exitCode) {
          NowChatExitCode.UserExit -> Log.i("NowChat", "User exited using the up button or back button")
          NowChatExitCode.SessionInitializationError -> Log.i("NowChat", "Unable to initialize session with instance")
          NowChatExitCode.ChatPluginNotInstalledError -> Log.i("NowChat", " Chat plugin not installed on instance.")
          NowChatExitCode.Unknown -> Log.i("NowChat", "User exited for Unknown reason")
        }
      }
    
      // Override other methods
    }

    NowChatSdkCallbacks - providerProgressView(context: Context)

    Retorna a exibição a ser exibida quando os dados de IU do NowChat estão sendo carregados; normalmente uma barra de andamento indeterminada configurada.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    contexto Contexto Contexto da aplicação a ser usado para criar a exibição.
    Tabela 7. Retorna
    Tipo Descrição
    Exibição Exibição que o serviço NowChat usa ao carregar.

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

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun provideProgressView(context: Context): View? {
        return ProgressBar(context).apply {
          indeterminateTintList = ColorStateList.valueOf(
            MaterialColors.getColor(
              context,
              android.R.attr.colorPrimary,
              Color.BLACK)
          )
        }
    
        // Override other methods
      }
    }