gpg::NearbyConnections

#include <nearby_connections.h>

API ที่ใช้สําหรับสร้างการเชื่อมต่อและการสื่อสารระหว่างแอปในเครือข่ายภายในเดียวกัน

สรุป

ผู้ผลิตและผู้ทำลาย

NearbyConnections()
~NearbyConnections()

ฟังก์ชันสาธารณะ

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
ยอมรับคำขอเชื่อมต่อ
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
ยอมรับคำขอเชื่อมต่อ
Disconnect(const std::string & remote_endpoint_id)
void
ยกเลิกการเชื่อมต่อจากปลายทางระยะไกลด้วยรหัสที่ระบุ
RejectConnectionRequest(const std::string & remote_endpoint_id)
void
ปฏิเสธคำขอเชื่อมต่อ
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
void
คำขอที่มีการสร้างการเชื่อมต่อด้วยปลายทางระยะไกล
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
void
ส่งคำขอการเชื่อมต่อกับปลายทางระยะไกล
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
ส่งข้อความที่เชื่อถือได้ไปยังปลายทางระยะไกลด้วยรหัสที่ระบุ
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
ส่งข้อความที่เชื่อถือได้ไปยังปลายทางระยะไกลที่มีรหัสที่ระบุ
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
ส่งข้อความที่ไม่น่าเชื่อถือไปยังปลายทางระยะไกลโดยใช้รหัสที่ระบุ
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
ส่งข้อความที่ไม่น่าเชื่อถือไปยังปลายทางระยะไกลโดยใช้รหัสที่ระบุ
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
void
เริ่มโฆษณาปลายทางสำหรับแอปในเครื่อง
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
ค้นหาปลายทางระยะไกลที่มีรหัสบริการที่ระบุ และเรียกใช้ Listener ซ้ำเมื่อแอปค้นหาและสูญเสียปลายทาง
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
void
ค้นหาปลายทางระยะไกลที่มีรหัสบริการที่ระบุ
Stop()
void
ยกเลิกการเชื่อมต่อจากอุปกรณ์ปลายทางระยะไกลทั้งหมด จะหยุดการโฆษณาหรือการค้นพบใดๆ ที่เกิดขึ้น
StopAdvertising()
void
หยุดการโฆษณาปลายทางในเครื่อง
StopDiscovery(const std::string & service_id)
void
หยุดค้นหาปลายทางระยะไกลสำหรับรหัสบริการที่ระบุก่อนหน้านี้

ชั้นเรียน

gpg::NearbyConnections::Builder

คลาส Builder ที่ใช้สร้างออบเจ็กต์ NearbyConnections

ฟังก์ชันสาธารณะ

AcceptConnectionRequest

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

ยอมรับคำขอเชื่อมต่อ

จากนั้น แอปจะสามารถส่งข้อความไปยังและรับข้อความจากปลายทางที่ระบุได้ โดยทําได้โดยใช้ listener จนกว่าแอปจะยกเลิกการเชื่อมต่อจากปลายทางอีกปลายทางหนึ่ง remote_endpoint_id ต้องตรงกับรหัสของอุปกรณ์ปลายทางระยะไกลที่ขอการเชื่อมต่อ ConnectionRequestCallback ระบุรหัสดังกล่าว payload สามารถคงข้อความที่จะส่งไปพร้อมกับการตอบกลับการเชื่อมต่อได้ listener ระบุ Listener ที่จะได้รับการแจ้งเตือนเกี่ยวกับเหตุการณ์สำหรับการเชื่อมต่อนี้

AcceptConnectionRequest

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

ยอมรับคำขอเชื่อมต่อ

ฟังก์ชันนี้แตกต่างจาก AcceptConnectionRequest ตรงที่ใช้ MessageListenerHelper ไม่ใช่ IMessageListener

ยกเลิกการเชื่อมต่อ

void Disconnect(
  const std::string & remote_endpoint_id
)

ยกเลิกการเชื่อมต่อจากปลายทางระยะไกลด้วยรหัสที่ระบุ

NearbyConnections

 NearbyConnections()

RejectConnectionRequest

void RejectConnectionRequest(
  const std::string & remote_endpoint_id
)

ปฏิเสธคำขอเชื่อมต่อ

remote_endpoint_id ต้องตรงกับรหัสของอุปกรณ์ปลายทางระยะไกลที่ขอการเชื่อมต่อ ConnectionRequestCallback ระบุรหัสดังกล่าว

SendConnectionRequest

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

คำขอที่มีการสร้างการเชื่อมต่อด้วยปลายทางระยะไกล

name คือชื่อที่แอปสามารถแสดงแก่ผู้ใช้ในอุปกรณ์อีกเครื่องเพื่อระบุปลายทางนี้ หากคุณระบุสตริงว่าง ระบบจะใช้ชื่ออุปกรณ์ remote_endpoint_id คือรหัสของปลายทางระยะไกลที่แอปนี้กำลังส่งคำขอเชื่อมต่อ payload สามารถเก็บข้อความที่กำหนดเองเพื่อส่งไปพร้อมกับคำขอเชื่อมต่อได้ อีกทางเลือกหนึ่งคือ แอปสามารถส่งเวกเตอร์ไบต์ว่างแทนเพย์โหลด ฟังก์ชันนี้เรียกใช้ Callback ที่ระบุในคำขอ หากการดำเนินการสำเร็จ ระบบจะแสดงข้อความ "ยอมรับการเชื่อมต่อแล้ว" หรือ "การเชื่อมต่อถูกปฏิเสธ" คำตอบ มิฉะนั้นระบบจะสร้างข้อความล้มเหลว ในกรณีที่เชื่อมต่อยอมรับ แอปจะส่งข้อความไปยังปลายทางระยะไกลได้ และแอปจะเรียกใช้ Listener ที่ระบุเมื่อได้รับข้อความหรือตัดการเชื่อมต่อจากปลายทางระยะไกล

SendConnectionRequest

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

ส่งคำขอการเชื่อมต่อกับปลายทางระยะไกล

แตกต่างจาก SendConnectionRequest เฉพาะตรงที่ใช้ MessageListenerHelper แทนที่จะเป็น IMessageListener

SendReliableMessage

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

ส่งข้อความที่เชื่อถือได้ไปยังปลายทางระยะไกลด้วยรหัสที่ระบุ

SendReliableMessage

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

ส่งข้อความที่เชื่อถือได้ไปยังปลายทางระยะไกลที่มีรหัสที่ระบุ

SendUnreliableMessage

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

ส่งข้อความที่ไม่น่าเชื่อถือไปยังปลายทางระยะไกลโดยใช้รหัสที่ระบุ

SendUnreliableMessage

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

ส่งข้อความที่ไม่น่าเชื่อถือไปยังปลายทางระยะไกลโดยใช้รหัสที่ระบุ

StartAdvertising

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

เริ่มโฆษณาปลายทางสำหรับแอปในเครื่อง

name อาจเป็นชื่อที่แอปแสดงต่อผู้ใช้เพื่อระบุปลายทาง หากคุณระบุสตริงว่าง ระบบจะใช้ชื่ออุปกรณ์ หากระบุ app_identifiers จะระบุวิธีติดตั้งหรือเปิดแอปนี้ในแพลตฟอร์มต่างๆ duration ระบุระยะเวลา (เป็นมิลลิวินาที) ที่โฆษณาจะทำงาน เว้นแต่แอปจะเรียก StopAdvertising() หรือ Stop() ก่อนที่ระยะเวลาจะหมดอายุ หากค่าของ duration เท่ากับ gpg::Duration::zero() การโฆษณาจะดำเนินต่อไปเรื่อยๆ จนกว่าแอปจะเรียก StopAdvertising() ฟังก์ชันนี้เรียกใช้ start_advertising_callback เมื่อเริ่มหรือล้มเหลวการโฆษณา การเรียกกลับนี้จะได้รับข้อมูลปลายทางที่แสดงว่าสำเร็จหรือรหัสข้อผิดพลาดเมื่อล้มเหลว ฟังก์ชันนี้เรียกใช้ request_callback เมื่อปลายทางระยะไกลขอการเชื่อมต่อกับปลายทางของแอป ฟังก์ชันนี้จะยังคงโฆษณาการแสดงปลายทางนี้ต่อไปจนกว่าแอปจะเรียก StopAdvertising หรือระยะเวลาผ่านไป หากมีปลายทางที่โฆษณาอยู่แล้ว การเรียกนี้จะล้มเหลว

StartDiscovery

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

ค้นหาปลายทางระยะไกลที่มีรหัสบริการที่ระบุ และเรียกใช้ Listener ซ้ำเมื่อแอปค้นหาและสูญเสียปลายทาง

ทำเช่นนี้ไปเรื่อยๆ จนกว่าแอปจะเรียก StopDiscovery ด้วยรหัสบริการที่ระบุ service_id ควรตรงกับมูลค่าที่แอประบุไว้เมื่อโฆษณาผ่าน StartAdvertising duration จะระบุระยะเวลาสูงสุด (เป็นมิลลิวินาที) ในการเรียกใช้การค้นพบ (อาจหยุดเร็วกว่านี้หากแอปเรียกใช้ StopDiscovery()) หากค่าของ Duration เท่ากับ gpg::Duration::zero() การค้นพบจะดำเนินต่อไปเรื่อยๆ จนกว่าแอปจะเรียก StopDiscovery() หรือ Stop() หากมี Listener ที่ลงทะเบียนเพื่อค้นหาปลายทางสำหรับรหัสบริการที่ระบุอยู่แล้ว การเรียกใช้นี้จะล้มเหลว

StartDiscovery

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

ค้นหาปลายทางระยะไกลที่มีรหัสบริการที่ระบุ

ฟังก์ชันนี้แตกต่างจาก StartDiscovery ตรงที่ใช้ EndpointDiscoveryListenerHelper แทน IEndpointDiscoveryListener

หยุด

void Stop()

ยกเลิกการเชื่อมต่อจากอุปกรณ์ปลายทางระยะไกลทั้งหมด จะหยุดการโฆษณาหรือการค้นพบใดๆ ที่เกิดขึ้น

ล้างสถานะภายใน

StopAdvertising

void StopAdvertising()

หยุดการโฆษณาปลายทางในเครื่อง

การทำเช่นนี้ไม่ทำให้การเชื่อมต่อที่มีอยู่สิ้นสุดลง

StopDiscovery

void StopDiscovery(
  const std::string & service_id
)

หยุดค้นหาปลายทางระยะไกลสำหรับรหัสบริการที่ระบุก่อนหน้านี้

~NearbyConnections

 ~NearbyConnections()