gpg:: NearbyConnections
#include <nearby_connections.h>
Một API dùng để tạo kết nối và giao tiếp giữa các ứng dụng trên cùng một mạng cục bộ.
Tóm tắt
Hàm khởi tạo và phá huỷ |
|
---|---|
NearbyConnections()
|
|
~NearbyConnections()
|
Hàm công khai |
|
---|---|
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
|
void
Chấp nhận yêu cầu kết nối.
|
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
|
void
Chấp nhận yêu cầu kết nối.
|
Disconnect(const std::string & remote_endpoint_id)
|
void
Ngắt kết nối khỏi điểm cuối từ xa có mã nhận dạng đã chỉ định.
|
RejectConnectionRequest(const std::string & remote_endpoint_id)
|
void
Từ chối yêu cầu kết nối.
|
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
|
void
Yêu cầu thiết lập kết nối bằng một điểm cuối từ xa.
|
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
|
void
Yêu cầu kết nối đến một điểm cuối từ xa.
|
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
|
void
Gửi một tin nhắn đáng tin cậy đến điểm cuối từ xa có mã nhận dạng đã chỉ định.
|
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
|
void
Gửi một tin nhắn đáng tin cậy đến các điểm cuối từ xa có mã nhận dạng đã chỉ định.
|
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
|
void
Gửi một thông báo không đáng tin cậy đến điểm cuối từ xa có mã nhận dạng đã chỉ định.
|
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
|
void
Gửi một tin nhắn không đáng tin cậy đến các điểm cuối từ xa có mã nhận dạng đã chỉ định.
|
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
|
void
Bắt đầu quảng cáo một điểm cuối cho một ứng dụng cục bộ.
|
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
|
void
Tìm các điểm cuối từ xa bằng mã dịch vụ đã chỉ định và gọi trình nghe nhiều lần khi ứng dụng tìm thấy và mất các điểm cuối.
|
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
|
void
Tìm các điểm cuối từ xa bằng mã dịch vụ đã chỉ định.
|
Stop()
|
void
Ngắt kết nối khỏi tất cả các điểm cuối từ xa; ngừng mọi quảng cáo hoặc khám phá đang diễn ra.
|
StopAdvertising()
|
void
Ngừng quảng cáo điểm cuối cục bộ.
|
StopDiscovery(const std::string & service_id)
|
void
Dừng tìm điểm cuối từ xa cho một mã dịch vụ đã chỉ định trước đó.
|
Lớp |
|
---|---|
gpg:: |
Builder dùng để tạo các đối tượng NearbyConnections |
Hàm công khai
AcceptConnectionRequest
void AcceptConnectionRequest( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener )
Chấp nhận yêu cầu kết nối.
Sau đó, ứng dụng có thể gửi và nhận tin nhắn từ điểm cuối được chỉ định. Ứng dụng có thể làm việc này bằng cách sử dụng listener
cho đến khi ứng dụng ngắt kết nối với điểm cuối khác. remote_endpoint_id
phải khớp với mã nhận dạng của điểm cuối từ xa đã yêu cầu kết nối. ConnectionRequestCallback
cung cấp mã nhận dạng đó. payload
có thể giữ một tin nhắn để gửi cùng với phản hồi kết nối. listener
chỉ định một trình nghe để nhận thông báo về các sự kiện cho kết nối này.
AcceptConnectionRequest
void AcceptConnectionRequest( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper )
Chấp nhận yêu cầu kết nối.
Hàm này chỉ khác với AcceptConnectionRequest
ở chỗ nó sử dụng MessageListenerHelper
chứ không phải IMessageListener
.
Ngắt kết nối
void Disconnect( const std::string & remote_endpoint_id )
Ngắt kết nối khỏi điểm cuối từ xa có mã nhận dạng đã chỉ định.
NearbyConnections
NearbyConnections()
RejectConnectionRequest
void RejectConnectionRequest( const std::string & remote_endpoint_id )
Từ chối yêu cầu kết nối.
remote_endpoint_id
phải khớp với mã nhận dạng của điểm cuối từ xa đã yêu cầu kết nối. ConnectionRequestCallback
cung cấp mã nhận dạng đó.
SendConnectionRequest
void SendConnectionRequest( const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener )
Yêu cầu thiết lập kết nối bằng một điểm cuối từ xa.
name
là tên mà ứng dụng có thể cho người dùng thấy trên thiết bị kia để xác định điểm cuối này. Nếu bạn chỉ định một chuỗi trống, thì tên thiết bị sẽ được sử dụng. remote_endpoint_id
là mã nhận dạng của điểm cuối từ xa mà ứng dụng này đang gửi yêu cầu kết nối. payload
có thể lưu giữ một tin nhắn tuỳ chỉnh để gửi cùng với yêu cầu kết nối. Ngoài ra, thay vì tải trọng, ứng dụng của bạn có thể truyền một vectơ byte trống. Hàm này gọi lệnh gọi lại đã chỉ định để phản hồi yêu cầu. Nếu thao tác thành công, thao tác sẽ tạo thông báo "Connection Accept" (Chấp nhận kết nối) hoặc "Kết nối bị từ chối" của bạn. Nếu không, Chrome sẽ tạo thông báo lỗi. Trong trường hợp kết nối được chấp nhận, ứng dụng có thể gửi thông báo đến điểm cuối từ xa và ứng dụng sẽ gọi trình nghe đã chỉ định khi nhận được tin nhắn hoặc bị ngắt kết nối khỏi điểm cuối từ xa.
SendConnectionRequest
void SendConnectionRequest( const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper )
Yêu cầu kết nối đến một điểm cuối từ xa.
Khác với SendConnectionRequest
, mã này sử dụng MessageListenerHelper
thay vì IMessageListener
.
SendReliableMessage
void SendReliableMessage( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload )
Gửi một tin nhắn đáng tin cậy đến điểm cuối từ xa có mã nhận dạng đã chỉ định.
SendReliableMessage
void SendReliableMessage( const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload )
Gửi một tin nhắn đáng tin cậy đến các điểm cuối từ xa có mã nhận dạng đã chỉ định.
SendUnreliableMessage
void SendUnreliableMessage( const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload )
Gửi một thông báo không đáng tin cậy đến điểm cuối từ xa có mã nhận dạng đã chỉ định.
SendUnreliableMessage
void SendUnreliableMessage( const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload )
Gửi một tin nhắn không đáng tin cậy đến các điểm cuối từ xa có mã nhận dạng đã chỉ định.
StartAdvertising
void StartAdvertising( const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback )
Bắt đầu quảng cáo một điểm cuối cho một ứng dụng cục bộ.
name
có thể là tên mà ứng dụng cho người dùng thấy để xác định điểm cuối. Nếu bạn chỉ định một chuỗi trống, thì tên thiết bị sẽ được sử dụng. Nếu bạn chỉ định, thì app_identifiers
sẽ chỉ định cách cài đặt hoặc chạy ứng dụng này trên nhiều nền tảng. duration
chỉ định thời lượng (tính bằng mili giây) mà quảng cáo sẽ chạy, trừ phi ứng dụng gọi StopAdvertising()
hoặc Stop()
trước khi hết thời lượng. Nếu giá trị của duration
bằng gpg::Duration::zero()
, quảng cáo sẽ tiếp tục vô thời hạn cho đến khi ứng dụng gọi StopAdvertising()
. Hàm này gọi start_advertising_callback
khi quảng cáo bắt đầu hoặc không hoạt động; lệnh gọi lại này nhận thông tin điểm cuối khi thành công hoặc mã lỗi khi không thành công. Hàm này gọi request_callback
khi một điểm cuối từ xa yêu cầu kết nối với điểm cuối của ứng dụng. Hàm này sẽ tiếp tục quảng cáo sự hiện diện của điểm cuối này cho đến khi ứng dụng gọi StopAdvertising
hoặc khi thời lượng kết thúc. Nếu đã có một điểm cuối đang được quảng cáo, thì lệnh gọi này sẽ không thành công.
StartDiscovery
void StartDiscovery( const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener )
Tìm các điểm cuối từ xa bằng mã dịch vụ đã chỉ định và gọi trình nghe nhiều lần khi ứng dụng tìm thấy và mất các điểm cuối.
Tiếp tục làm như vậy cho đến khi ứng dụng gọi StopDiscovery
bằng mã dịch vụ đã chỉ định. service_id
phải khớp với giá trị mà ứng dụng cung cấp khi quảng cáo qua StartAdvertising
. duration
chỉ định thời lượng tối đa (tính bằng mili giây) để chạy chế độ khám phá (có thể dừng sớm hơn nếu ứng dụng gọi StopDiscovery()
). Nếu giá trị của Duration
bằng gpg::Duration::zero()
, tính năng khám phá sẽ tiếp tục vô thời hạn cho đến khi ứng dụng gọi StopDiscovery()
hoặc Stop()
. Nếu đã có một trình nghe được đăng ký để tìm các điểm cuối cho mã dịch vụ đã chỉ định, thì lệnh gọi này sẽ không thực hiện được.
StartDiscovery
void StartDiscovery( const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper )
Tìm các điểm cuối từ xa bằng mã dịch vụ đã chỉ định.
Hàm này chỉ khác StartDiscovery
ở chỗ nó sử dụng EndpointDiscoveryListenerHelper
thay vì IEndpointDiscoveryListener
.
Dừng
void Stop()
Ngắt kết nối khỏi tất cả các điểm cuối từ xa; ngừng mọi quảng cáo hoặc khám phá đang diễn ra.
Xoá trạng thái nội bộ.
StopAdvertising
void StopAdvertising()
Ngừng quảng cáo điểm cuối cục bộ.
Việc này sẽ KHÔNG khiến các kết nối hiện có bị ngắt.
StopDiscovery
void StopDiscovery( const std::string & service_id )
Dừng tìm điểm cuối từ xa cho một mã dịch vụ đã chỉ định trước đó.
~NearbyConnections
~NearbyConnections()