gpg::NearbyConnections

#include <nearby_connections.h>

Uma API usada para criar conexões e se comunicar entre apps na mesma rede local.

Resumo

Construtores e destrutores

NearbyConnections()
~NearbyConnections()

Funções públicas

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
Aceita uma solicitação de conexão.
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
Aceita uma solicitação de conexão.
Disconnect(const std::string & remote_endpoint_id)
void
Desconecta do endpoint remoto com o ID especificado.
RejectConnectionRequest(const std::string & remote_endpoint_id)
void
Rejeita uma solicitação de conexão.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
void
Solicita que uma conexão seja estabelecida com um endpoint remoto.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
void
Solicita uma conexão com um endpoint remoto.
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Envia uma mensagem confiável para o endpoint remoto com o ID especificado.
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
Envia uma mensagem confiável aos endpoints remotos com os IDs especificados.
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Envia uma mensagem não confiável ao endpoint remoto com o ID especificado.
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
Envia uma mensagem não confiável aos endpoints remotos com os IDs especificados.
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
void
Começa a veicular um endpoint para um app local.
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
Encontra endpoints remotos com o ID de serviço especificado e invoca o listener repetidamente conforme o app encontra e perde endpoints.
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
void
Encontra endpoints remotos com o ID de serviço especificado.
Stop()
void
Desconecta de todos os endpoints remotos e interrompe qualquer publicidade ou descoberta que esteja acontecendo.
StopAdvertising()
void
Interrompe a veiculação do endpoint local.
StopDiscovery(const std::string & service_id)
void
Para de encontrar endpoints remotos para um ID de serviço especificado anteriormente.

Classes

gpg::NearbyConnections::Builder

Classe Builder usada para criar objetos NearbyConnections.

Funções públicas

AcceptConnectionRequest

void AcceptConnectionRequest(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  IMessageListener *listener
)

Aceita uma solicitação de conexão.

Em seguida, o app pode enviar e receber mensagens do endpoint especificado. Isso pode ser feito usando listener até que o app se desconecte do outro endpoint. remote_endpoint_id precisa corresponder ao ID do endpoint remoto que solicitou a conexão. ConnectionRequestCallback fornece esse ID. payload pode conter uma mensagem para enviar junto com a resposta de conexão. listener especifica um listener para receber notificações de eventos dessa conexão.

AcceptConnectionRequest

void AcceptConnectionRequest(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  MessageListenerHelper helper
)

Aceita uma solicitação de conexão.

Essa função difere de AcceptConnectionRequest apenas porque usa MessageListenerHelper em vez de IMessageListener.

Desconectar

void Disconnect(
  const std::string & remote_endpoint_id
)

Desconecta do endpoint remoto com o ID especificado.

NearbyConnections

 NearbyConnections()

RejectConnectionRequest

void RejectConnectionRequest(
  const std::string & remote_endpoint_id
)

Rejeita uma solicitação de conexão.

remote_endpoint_id precisa corresponder ao ID do endpoint remoto que solicitou a conexão. ConnectionRequestCallback fornece esse ID.

SendConnectionRequest

void SendConnectionRequest(
  const std::string & name,
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  ConnectionResponseCallback callback,
  IMessageListener *listener
)

Solicita que uma conexão seja estabelecida com um endpoint remoto.

name é um nome que o app pode mostrar aos usuários no outro dispositivo para identificar esse endpoint. Se você especificar uma string vazia, o nome do dispositivo será usado. remote_endpoint_id é o ID do endpoint remoto para o qual o app está enviando uma solicitação de conexão. payload pode conter uma mensagem personalizada para enviar com a solicitação de conexão. Como alternativa, em vez de um payload, o app pode transmitir um vetor de bytes vazio. Essa função invoca o callback especificado em resposta à solicitação. Se a operação for bem-sucedida, ela vai produzir uma resposta "Conexão aceita" ou "Conexão rejeitada". Caso contrário, ele gera uma mensagem de falha. No caso de uma conexão aceita, o app pode enviar mensagens para o endpoint remoto e invocar o listener especificado ao receber uma mensagem ou desconexão do endpoint remoto.

SendConnectionRequest

void SendConnectionRequest(
  const std::string & name,
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  ConnectionResponseCallback callback,
  MessageListenerHelper helper
)

Solicita uma conexão a um endpoint remoto.

A diferença entre SendConnectionRequest e MessageListenerHelper é que o primeiro usa MessageListenerHelper em vez de IMessageListener.

SendReliableMessage

void SendReliableMessage(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload
)

Envia uma mensagem confiável para o endpoint remoto com o ID especificado.

SendReliableMessage

void SendReliableMessage(
  const std::vector< std::string > & remote_endpoint_ids,
  const std::vector< uint8_t > & payload
)

Envia uma mensagem confiável aos endpoints remotos com os IDs especificados.

SendUnreliableMessage

void SendUnreliableMessage(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload
)

Envia uma mensagem não confiável ao endpoint remoto com o ID especificado.

SendUnreliableMessage

void SendUnreliableMessage(
  const std::vector< std::string > & remote_endpoint_ids,
  const std::vector< uint8_t > & payload
)

Envia uma mensagem não confiável aos endpoints remotos com os IDs especificados.

StartAdvertising

void StartAdvertising(
  const std::string & name,
  const std::vector< AppIdentifier > & app_identifiers,
  Duration duration,
  StartAdvertisingCallback start_advertising_callback,
  ConnectionRequestCallback request_callback
)

Começa a veicular um endpoint para um app local.

name pode ser um nome que o app mostra aos usuários para identificar o endpoint. Se você especificar uma string vazia, o nome do dispositivo será usado. Se especificado, app_identifiers especifica como instalar ou iniciar esse app em diferentes plataformas. duration especifica a duração (em milissegundos) em que o anúncio será veiculado, a menos que o app invoque StopAdvertising() ou Stop() antes que a duração expire. Se o valor de duration for igual a gpg::Duration::zero(), a publicidade vai continuar indefinidamente até que o app chame StopAdvertising(). Essa função invoca start_advertising_callback quando a publicidade começa ou falha. Esse callback recebe as informações do endpoint em caso de sucesso ou um código de erro em caso de falha. Essa função invoca request_callback quando um endpoint remoto solicita uma conexão com o endpoint do app. Essa função continua anunciando a presença desse endpoint até que o app chame StopAdvertising ou a duração expire. Se já houver um endpoint sendo anunciado, essa chamada vai falhar.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  IEndpointDiscoveryListener *listener
)

Encontra endpoints remotos com o ID de serviço especificado e invoca o listener repetidamente conforme o app encontra e perde endpoints.

Isso continua até que o app invoque StopDiscovery com o ID de serviço especificado. O service_id precisa corresponder ao valor que os apps oferecem ao anunciar por StartAdvertising. duration especifica a duração máxima (em milissegundos) para a execução da descoberta. Ela pode ser interrompida mais cedo se o app invocar StopDiscovery(). Se o valor de Duration for igual a gpg::Duration::zero(), a descoberta vai continuar indefinidamente até que o app chame StopDiscovery() ou Stop(). Se já houver um listener registrado para encontrar endpoints do ID de serviço especificado, essa chamada vai falhar.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  EndpointDiscoveryListenerHelper helper
)

Encontra endpoints remotos com o ID de serviço especificado.

Essa função difere de StartDiscovery apenas porque usa EndpointDiscoveryListenerHelper em vez de IEndpointDiscoveryListener.

Parar

void Stop()

Desconecta de todos os endpoints remotos e interrompe qualquer publicidade ou descoberta que esteja acontecendo.

Limpa o estado interno.

StopAdvertising

void StopAdvertising()

Interrompe a veiculação do endpoint local.

Isso NÃO causa a interrupção das conexões atuais.

StopDiscovery

void StopDiscovery(
  const std::string & service_id
)

Para de encontrar endpoints remotos para um ID de serviço especificado anteriormente.

~NearbyConnections

 ~NearbyConnections()