gpg::NearbyConnections

#include <nearby_connections.h>

Interfejs API używany do nawiązywania połączeń i komunikowania się między aplikacjami w tej samej sieci lokalnej.

Podsumowanie

Konstruktory i niszczyciele

NearbyConnections()
~NearbyConnections()

Funkcje publiczne

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
Przyjmuje prośbę o połączenie.
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
Przyjmuje prośbę o połączenie.
Disconnect(const std::string & remote_endpoint_id)
void
Odłącza się od zdalnego punktu końcowego 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
Żądanie nawiązania 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
Żąda połączenia ze zdalnym punktem końcowym.
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Wysyła niezawodny komunikat do zdalnego punktu końcowego o określonym identyfikatorze.
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 nierzetelny komunikat do zdalnego punktu końcowego o określonym identyfikatorze.
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
Zaczyna reklamować punkt końcowy aplikacji lokalnej.
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
Znajduje zdalne punkty końcowe o podanym identyfikatorze usługi i wielokrotnie wywołuje detektor, gdy aplikacja znajduje i traci 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
rozłącza się od wszystkich zdalnych punktów końcowych; zatrzymuje realizowanie reklam i odkrywanie.
StopAdvertising()
void
przestaje reklamować lokalny punkt końcowy;
StopDiscovery(const std::string & service_id)
void
Zatrzymuje znajdowanie zdalnych punktów końcowych dla wcześniej podanego identyfikatora usługi.

Zajęcia

gpg::NearbyConnections::Builder

Klasa Builder używana do tworzenia obiektów NearbyConnections.

Funkcje publiczne

AcceptConnectionRequest

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

Przyjmuje prośbę o połączenie.

Następnie aplikacja może wysyłać wiadomości do określonego punktu końcowego i je z niego odbierać. Może to robić za pomocą listener do momentu odłączenia aplikacji od innego punktu końcowego. remote_endpoint_id musi być zgodny z identyfikatorem zdalnego punktu końcowego, który zażądał połączenia. Identyfikator ten jest podawany przez ConnectionRequestCallback. payload może wstrzymać wiadomość, którą chcesz wysłać wraz z odpowiedzią na połączenie. listener określa detektor, który będzie powiadamiany o zdarzeniach dla tego połączenia.

AcceptConnectionRequest

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

Przyjmuje prośbę o połączenie.

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

Odłącz

void Disconnect(
  const std::string & remote_endpoint_id
)

Odłącza się od zdalnego punktu końcowego 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. Identyfikator ten jest podawany przez ConnectionRequestCallback.

SendConnectionRequest

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

Żądanie nawiązania 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 wysłać własną wiadomość, która zostanie wysłana wraz z prośbą o połączenie. Zamiast ładunku aplikacja może też przekazać pusty wektor bajtowy. Ta funkcja wywołuje określone wywołanie zwrotne w odpowiedzi na żądanie. Jeśli operacja się powiedzie, wyświetli się komunikat „Połączenie zaakceptowane”. lub „Połączenie odrzucone” . W przeciwnym razie pojawia się komunikat o błędzie. W przypadku akceptowanego połączenia aplikacja może wysyłać wiadomości do zdalnego punktu końcowego, a aplikacja wywołuje określony detektor po otrzymaniu wiadomości lub rozłączeniu ze zdalnym punktem końcowym.

SendConnectionRequest

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

Żąda połączenia 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 niezawodny komunikat do zdalnego punktu końcowego o określonym identyfikatorze.

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 nierzetelny komunikat do zdalnego punktu końcowego o określonym identyfikatorze.

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
)

Zaczyna reklamować punkt końcowy aplikacji lokalnej.

name może być nazwą, którą aplikacja wyświetla użytkownikom w celu identyfikacji punktu końcowego. Jeśli podasz pusty ciąg znaków, zostanie użyta nazwa urządzenia. Jeśli jest określona, app_identifiers określa sposób instalowania lub uruchamiania tej aplikacji na różnych platformach. duration określa czas (w milisekundach), przez jaki reklama będzie się wyświetlać, chyba że aplikacja wywoła StopAdvertising() lub Stop() przed upływem czasu. Jeśli wartość duration jest równa gpg::Duration::zero(), reklamy będą wyświetlane bezterminowo, dopóki aplikacja nie wywoła parametru StopAdvertising(). Ta funkcja wywołuje start_advertising_callback w przypadku uruchomienia lub błędu reklamy. to wywołanie zwrotne otrzymuje informacje o punkcie końcowym w przypadku powodzenia 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 będzie reklamować obecność tego punktu końcowego do momentu wywołania przez aplikację StopAdvertising lub upłynięcia czasu trwania. Jeśli istnieje już rozgłaszany punkt końcowy, to wywołanie zakończy się niepowodzeniem.

StartDiscovery

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

Znajduje zdalne punkty końcowe o podanym identyfikatorze usługi i wielokrotnie wywołuje detektor, gdy aplikacja znajduje i traci punkty końcowe.

Działa to tak długo, aż aplikacja wywoła funkcję StopDiscovery z podanym identyfikatorem usługi. Wartość service_id powinna odpowiadać wartości, jaką aplikacje udostępniają w przypadku reklam opartych na: StartAdvertising. duration określa maksymalny czas (w milisekundach), po którym ma działać wykrywanie (może się ono zatrzymać wcześniej, jeśli aplikacja wywoła StopDiscovery()). Jeśli wartość Duration jest równa gpg::Duration::zero(), wykrywanie będzie kontynuowane bez końca, dopóki aplikacja nie wywoła funkcji StopDiscovery() lub Stop(). Jeśli istnieje już detektor, który znajduje punkty końcowe dla określonego identyfikatora usługi, to wywołanie zakończy się niepowodzeniem.

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()

rozłącza się od wszystkich zdalnych punktów końcowych; zatrzymuje realizowanie reklam i odkrywanie.

Usuwa stan wewnętrzny.

StopAdvertising

void StopAdvertising()

przestaje reklamować lokalny punkt końcowy;

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 podanego identyfikatora usługi.

~NearbyConnections

 ~NearbyConnections()