gpg:: NearbyConnections
#include <nearby_connections.h>
Una API que se usa para crear conexiones y comunicarse entre apps en la misma red local.
Resumen
Constructores y destructores |
|
---|---|
NearbyConnections()
|
|
~NearbyConnections()
|
Funciones públicas |
|
---|---|
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
|
void
Acepta una solicitud de conexión.
|
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
|
void
Acepta una solicitud de conexión.
|
Disconnect(const std::string & remote_endpoint_id)
|
void
Se desconecta del extremo remoto con el ID especificado.
|
RejectConnectionRequest(const std::string & remote_endpoint_id)
|
void
Rechaza una solicitud de conexión.
|
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
|
void
Solicita que se establezca una conexión con un extremo remoto.
|
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
|
void
Solicita una conexión a un extremo remoto.
|
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
|
void
Envía un mensaje confiable al extremo remoto con el ID especificado.
|
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
|
void
Envía un mensaje confiable a los extremos remotos con los ID especificados.
|
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
|
void
Envía un mensaje poco confiable al extremo remoto con el ID especificado.
|
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
|
void
Envía un mensaje poco confiable a los extremos remotos con los ID especificados.
|
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
|
void
Comienza a anunciar un extremo para una app local.
|
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
|
void
Encuentra extremos remotos con el ID de servicio especificado y, luego, invoca el objeto de escucha repetidamente cuando la app encuentra y pierde extremos.
|
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
|
void
Encuentra extremos remotos con el ID de servicio especificado.
|
Stop()
|
void
Se desconecta de todos los endpoints remotos. detiene cualquier publicidad o descubrimiento que se esté llevando a cabo.
|
StopAdvertising()
|
void
Deja de anunciar el extremo local.
|
StopDiscovery(const std::string & service_id)
|
void
Deja de encontrar extremos remotos para un ID de servicio ya especificado.
|
Clases |
|
---|---|
gpg:: |
Builder que se usa para construir objetos NearbyConnections. |
Funciones públicas
AcceptConnectionRequest
void AcceptConnectionRequest( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener )
Acepta una solicitud de conexión.
Posteriormente, la app puede enviar mensajes al extremo especificado y recibirlos del extremo especificado. Puede hacerlo, con listener
, hasta que la app se desconecte del otro extremo. remote_endpoint_id
debe coincidir con el ID del extremo remoto que solicitó la conexión. ConnectionRequestCallback
proporciona ese ID. payload
puede retener un mensaje para enviarlo junto con la respuesta de conexión. listener
especifica un objeto de escucha que debe recibir notificaciones sobre eventos de esta conexión.
AcceptConnectionRequest
void AcceptConnectionRequest( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper )
Acepta una solicitud de conexión.
Esta función solo difiere de AcceptConnectionRequest
en que usa MessageListenerHelper
, en lugar de IMessageListener
.
Desconectar
void Disconnect( const std::string & remote_endpoint_id )
Se desconecta del extremo remoto con el ID especificado.
NearbyConnections
NearbyConnections()
RejectConnectionRequest
void RejectConnectionRequest( const std::string & remote_endpoint_id )
Rechaza una solicitud de conexión.
remote_endpoint_id
debe coincidir con el ID del extremo remoto que solicitó la conexión. ConnectionRequestCallback
proporciona ese 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 se establezca una conexión con un extremo remoto.
name
es un nombre que la app puede mostrar a los usuarios del otro dispositivo para identificar este extremo. Si especificas una cadena vacía, se usará el nombre del dispositivo. remote_endpoint_id
es el ID del extremo remoto al que esta app envía una solicitud para conectarse. payload
puede retener un mensaje personalizado para enviarlo junto con la solicitud de conexión. Como alternativa, en lugar de una carga útil, tu app puede pasar un vector de bytes vacío. Esta función invoca la devolución de llamada especificada en respuesta a la solicitud. Si la operación se realiza correctamente, se mostrará el mensaje "Connection Accepted". o "Conexión rechazada" respuesta. De lo contrario, genera un mensaje de error. En caso de que se acepte una conexión, la app puede enviar mensajes al extremo remoto y invocar el objeto de escucha especificado cuando recibe un mensaje o se desconecta de este.
SendConnectionRequest
void SendConnectionRequest( const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper )
Solicita una conexión a un extremo remoto.
Se diferencia de SendConnectionRequest
solo porque usa MessageListenerHelper
en lugar de IMessageListener
.
SendReliableMessage
void SendReliableMessage( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload )
Envía un mensaje confiable al extremo remoto con el ID especificado.
SendReliableMessage
void SendReliableMessage( const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload )
Envía un mensaje confiable a los extremos remotos con los ID especificados.
SendUnreliableMessage
void SendUnreliableMessage( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload )
Envía un mensaje poco confiable al extremo remoto con el ID especificado.
SendUnreliableMessage
void SendUnreliableMessage( const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload )
Envía un mensaje poco confiable a los extremos remotos con los ID especificados.
StartAdvertising
void StartAdvertising( const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback )
Comienza a anunciar un extremo para una app local.
name
puede ser un nombre que la app muestra a los usuarios para identificar el extremo. Si especificas una cadena vacía, se usará el nombre del dispositivo. Si se especifica, app_identifiers
especifica cómo instalar o iniciar esta app en diferentes plataformas. duration
especifica la duración (en milisegundos) durante la que se ejecutará el anuncio, a menos que la app invoque StopAdvertising()
o Stop()
antes de que venza la duración. Si el valor de duration
es igual a gpg::Duration::zero()
, la publicidad continúa indefinidamente hasta que la app llame a StopAdvertising()
. Esta función invoca start_advertising_callback
cuando se inicia o falla la publicidad. esta devolución de llamada recibe la información del extremo en caso de éxito o un código de error en caso de error. Esta función invoca a request_callback
cuando un extremo remoto solicita una conexión con el extremo de la app. Esta función continúa anunciando la presencia de este extremo hasta que la app llama a StopAdvertising
o hasta que transcurre la duración. Si ya hay un extremo anunciado, esta llamada falla.
StartDiscovery
void StartDiscovery( const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener )
Encuentra extremos remotos con el ID de servicio especificado y, luego, invoca el objeto de escucha repetidamente cuando la app encuentra y pierde extremos.
Continúa haciéndolo hasta que la app invoca a StopDiscovery
con el ID de servicio especificado. El service_id
debe coincidir con el valor que proporcionan las apps cuando publican anuncios a través de StartAdvertising
. duration
especifica la duración máxima (en milisegundos) para que se ejecute el descubrimiento (es posible que se detenga antes si la app invoca a StopDiscovery()
). Si el valor de Duration
es igual a gpg::Duration::zero()
, el descubrimiento continúa indefinidamente hasta que la app llama a StopDiscovery()
o Stop()
. Si ya existe un objeto de escucha registrado para encontrar extremos para el ID de servicio especificado, esta llamada falla.
StartDiscovery
void StartDiscovery( const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper )
Encuentra extremos remotos con el ID de servicio especificado.
Esta función se diferencia de StartDiscovery
solo porque usa EndpointDiscoveryListenerHelper
en lugar de IEndpointDiscoveryListener
.
Detener
void Stop()
Se desconecta de todos los endpoints remotos. detiene cualquier publicidad o descubrimiento que se esté llevando a cabo.
Borra el estado interno.
StopAdvertising
void StopAdvertising()
Deja de anunciar el extremo local.
Hacerlo NO provocará que se eliminen las conexiones existentes.
StopDiscovery
void StopDiscovery( const std::string & service_id )
Deja de encontrar extremos remotos para un ID de servicio ya especificado.
~NearbyConnections
~NearbyConnections()