gpg::NearbyConnections

#include <nearby_connections.h>

Interfejs API służący do tworzenia połączeń i komunikacji między aplikacjami w tej samej sieci lokalnej.

Podsumowanie

Konstruktorzy i niszczyciele

NearbyConnections()
~NearbyConnections()

Funkcje publiczne

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
Akceptuje prośbę o połączenie.
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
Akceptuje prośbę o połączenie.
Disconnect(const std::string & remote_endpoint_id)
void
Łączy się ze zdalnym punktem końcowym o określonym identyfikatorze.
RejectConnectionRequest(const std::string & remote_endpoint_id)
void
Odrzuca prośbę o połączenie.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
void
Wysyła prośbę o nawiązanie połączenia ze zdalnym punktem końcowym.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
void
Wysyła prośbę o połączenie ze zdalnym punktem końcowym.
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Wysyła niezawodną wiadomość o określonym identyfikatorze do zdalnego punktu końcowego.
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
Wysyła niezawodny komunikat do zdalnych punktów końcowych o określonych identyfikatorach.
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Wysyła niewiarygodną wiadomość o określonym identyfikatorze do zdalnego punktu końcowego.
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
Wysyła nierzetelny komunikat do zdalnych punktów końcowych o określonych identyfikatorach.
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
void
Rozpoczyna reklamowanie punktu końcowego dla aplikacji lokalnej.
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
Wyszukuje zdalne punkty końcowe o określonym identyfikatorze usługi i wielokrotnie wywołuje detektor, gdy aplikacja znajduje i usuwa punkty końcowe.
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
void
Znajduje zdalne punkty końcowe o podanym identyfikatorze usługi.
Stop()
void
Łączy się ze wszystkimi zdalnymi punktami końcowymi; zatrzymuje wyświetlanie reklam lub odkrywanie ich.
StopAdvertising()
void
Zatrzymuje reklamowanie lokalnego punktu końcowego.
StopDiscovery(const std::string & service_id)
void
Zatrzymuje znajdowanie zdalnych punktów końcowych dla wcześniej określonego identyfikatora usługi.

Zajęcia

gpg::NearbyConnections::Builder

Klasa Builder, która służy do tworzenia obiektów NearbyConnections.

Funkcje publiczne

AcceptConnectionRequest

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

Akceptuje prośbę o połączenie.

Dzięki temu aplikacja może wysyłać wiadomości do określonego punktu końcowego i je z niego odbierać. Może to robić za pomocą funkcji listener, dopóki aplikacja nie odłączy się od innego punktu końcowego. remote_endpoint_id musi być zgodny z identyfikatorem zdalnego punktu końcowego, który zażądał połączenia. Podaje ten identyfikator: ConnectionRequestCallback. payload może wstrzymać wiadomość do wysłania wraz z odpowiedzią dotyczącą połączenia. listener określa odbiornik, który ma być powiadamiany o zdarzeniach dla tego połączenia.

AcceptConnectionRequest

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

Akceptuje prośbę o połączenie.

Ta funkcja różni się od funkcji AcceptConnectionRequest tylko tym, że używa jej MessageListenerHelper, a nie IMessageListener.

Rozłącz

void Disconnect(
  const std::string & remote_endpoint_id
)

Łączy się ze zdalnym punktem końcowym o określonym identyfikatorze.

NearbyConnections

 NearbyConnections()

RejectConnectionRequest

void RejectConnectionRequest(
  const std::string & remote_endpoint_id
)

Odrzuca prośbę o połączenie.

remote_endpoint_id musi być zgodny z identyfikatorem zdalnego punktu końcowego, który zażądał połączenia. Podaje ten identyfikator: ConnectionRequestCallback.

SendConnectionRequest

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

Wysyła prośbę o nawiązanie połączenia ze zdalnym punktem końcowym.

name to nazwa, którą aplikacja może wyświetlać użytkownikom na innym urządzeniu, aby zidentyfikować ten punkt końcowy. Jeśli podasz pusty ciąg znaków, zostanie użyta nazwa urządzenia. remote_endpoint_id to identyfikator zdalnego punktu końcowego, do którego ta aplikacja wysyła żądanie połączenia. payload może uwzględnić w wiadomościach niestandardową wiadomość, która zostanie wysłana wraz z prośbą o połączenie. Zamiast ładunku aplikacja może przekazywać pusty wektor bajtowy. W odpowiedzi na żądanie ta funkcja wywołuje określone wywołanie zwrotne. Jeśli operacja się uda, wyświetli się odpowiedź „Connection Accepted” (Połączenie zostało zaakceptowane) lub „Connection aktualizacji” (Odrzucono połączenie). W przeciwnym razie zostanie wygenerowany komunikat o błędzie. W przypadku akceptowanego połączenia aplikacja może wysyłać komunikaty do zdalnego punktu końcowego i wywoływać określony detektor po otrzymaniu wiadomości lub odłączeniu od zdalnego punktu końcowego.

SendConnectionRequest

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

Wysyła prośbę o połączenie ze zdalnym punktem końcowym.

Różni się od SendConnectionRequest tylko tym, że używa MessageListenerHelper zamiast IMessageListener.

SendReliableMessage

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

Wysyła niezawodną wiadomość o określonym identyfikatorze do zdalnego punktu końcowego.

SendReliableMessage

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

Wysyła niezawodny komunikat do zdalnych punktów końcowych o określonych identyfikatorach.

SendUnreliableMessage

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

Wysyła niewiarygodną wiadomość o określonym identyfikatorze do zdalnego punktu końcowego.

SendUnreliableMessage

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

Wysyła nierzetelny komunikat do zdalnych punktów końcowych o określonych identyfikatorach.

StartAdvertising

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

Rozpoczyna reklamowanie punktu końcowego dla aplikacji lokalnej.

name może być nazwą, którą aplikacja wyświetla użytkownikom, aby zidentyfikować punkt końcowy. Jeśli podasz pusty ciąg znaków, zostanie użyta nazwa urządzenia. Jeśli zasada jest określona, app_identifiers określa sposób instalowania lub uruchamiania aplikacji na różnych platformach. duration określa czas (w milisekundach), przez jaki będzie się wyświetlać reklama, chyba że aplikacja wywoła metodę StopAdvertising() lub Stop() przed upływem czasu trwania. Jeśli wartość duration jest równa gpg::Duration::zero(), wyświetlanie reklam będzie trwać bez końca, dopóki aplikacja nie wywoła parametru StopAdvertising(). Ta funkcja wywołuje funkcję start_advertising_callback w przypadku rozpoczęcia lub niepowodzenia wyświetlania reklam. Wywołanie zwrotne otrzymuje informacje o punkcie końcowym (pomyślny) lub kod błędu w przypadku niepowodzenia. Ta funkcja wywołuje request_callback, gdy zdalny punkt końcowy żąda połączenia z punktem końcowym aplikacji. Ta funkcja reklamuje obecność tego punktu końcowego, dopóki aplikacja nie wywoła funkcji StopAdvertising lub nie upłynie czas trwania. Jeśli rozgłaszany jest już punkt końcowy, wywołanie to zakończy się niepowodzeniem.

StartDiscovery

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

Wyszukuje zdalne punkty końcowe o określonym identyfikatorze usługi i wielokrotnie wywołuje detektor, gdy aplikacja znajduje i usuwa punkty końcowe.

Będzie to robić, dopóki aplikacja nie wywoła funkcji StopDiscovery z podanym identyfikatorem usługi. Wartość service_id powinna odpowiadać wartości udostępnianej przez aplikacje, gdy reklamujesz się za pomocą atrybutu StartAdvertising. duration określa maksymalny czas trwania wykrywania (w milisekundach) (może zostać zatrzymany wcześniej, jeśli aplikacja wywoła StopDiscovery()). Jeśli wartość Duration jest równa gpg::Duration::zero(), wykrywanie trwa bez końca, dopóki aplikacja nie wywoła parametru StopDiscovery() lub Stop(). Jeśli istnieje już detektor służący do wyszukiwania punktów końcowych dla określonego identyfikatora usługi, to wywołanie się nie uda.

StartDiscovery

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

Znajduje zdalne punkty końcowe o podanym identyfikatorze usługi.

Ta funkcja różni się od funkcji StartDiscovery tylko tym, że używa EndpointDiscoveryListenerHelper zamiast IEndpointDiscoveryListener.

Zatrzymaj

void Stop()

Łączy się ze wszystkimi zdalnymi punktami końcowymi; zatrzymuje wyświetlanie reklam lub odkrywanie ich.

Usuwa stan wewnętrzny.

StopAdvertising

void StopAdvertising()

Zatrzymuje reklamowanie lokalnego punktu końcowego.

NIE spowoduje to zerwania istniejących połączeń.

StopDiscovery

void StopDiscovery(
  const std::string & service_id
)

Zatrzymuje znajdowanie zdalnych punktów końcowych dla wcześniej określonego identyfikatora usługi.

~Połączenia w pobliżu

 ~NearbyConnections()