Tổng quan

Nearby Connections là một API mạng ngang hàng, cho phép các ứng dụng dễ dàng khám phá, kết nối và trao đổi dữ liệu với các thiết bị ở gần theo thời gian thực, bất kể khả năng kết nối mạng.

Một số trường hợp sử dụng mẫu:

  • Bảng trắng hỗ trợ cộng tác: Ghi lại ý tưởng với những người tham gia ở gần trên bảng trắng ảo dùng chung.
  • Chơi trò chơi nhiều người chơi tại địa phương: Thiết lập một trò chơi nhiều người chơi và mời những người dùng khác ở gần tham gia.
  • Chơi game trên nhiều màn hình: Dùng điện thoại hoặc máy tính bảng làm bộ điều khiển trò chơi để chơi các trò chơi hiển thị trên một thiết bị Android màn hình lớn ở gần, chẳng hạn như Android TV.
  • Chuyển tệp khi không có mạng: Chia sẻ ảnh, video hoặc bất kỳ loại dữ liệu nào khác một cách nhanh chóng mà không cần kết nối mạng.

Giới thiệu

Nearby Connections cho phép quảng cáo, khám phá và kết nối giữa các thiết bị ở gần theo cách ngang hàng hoàn toàn ngoại tuyến. Các kết nối giữa các thiết bị có băng thông cao, độ trễ thấp và được mã hoá hoàn toàn để cho phép truyền dữ liệu nhanh chóng và an toàn.

Mục tiêu chính của API này là cung cấp một nền tảng đơn giản, đáng tin cậy và hiệu quả. Về cơ bản, API này sử dụng kết hợp các công nghệ Bluetooth, BLE và Wi-Fi, tận dụng điểm mạnh của từng công nghệ trong khi tránh được điểm yếu tương ứng. Điều này giúp trừu tượng hoá một cách hiệu quả những điểm bất thường của Bluetooth và Wi-Fi trên nhiều nền tảng và phiên bản hệ điều hành, cho phép nhà phát triển tập trung vào những tính năng quan trọng đối với người dùng.

Tổng quan về API

Việc sử dụng API này được chia thành 2 giai đoạn: trước khi kết nối và sau khi kết nối.

Trong giai đoạn trước khi kết nối, Nhà quảng cáo tự quảng cáo, trong khi Người khám phá khám phá Nhà quảng cáo ở gần và gửi yêu cầu kết nối. Yêu cầu kết nối từ một Thiết bị phát hiện đến một Nhà quảng cáo sẽ bắt đầu một quy trình xác thực đối xứng, trong đó cả hai bên đều độc lập chấp nhận (hoặc từ chối) yêu cầu kết nối.

Sau khi cả hai bên chấp nhận yêu cầu kết nối, kết nối sẽ được coi là đã thiết lập và các thiết bị sẽ chuyển sang giai đoạn sau kết nối. Trong giai đoạn này, cả hai bên có thể trao đổi dữ liệu.

Quảng cáo và khám phá

Nhà quảng cáo sẽ xuất hiện cho những người khám phá khác và người khám phá sẽ nhận được thông báo khi tìm thấy hoặc mất một nhà quảng cáo mới.

Thiết lập kết nối

Khi muốn kết nối với một nhà quảng cáo ở gần, người khám phá có thể yêu cầu kết nối.

Cả hai bên sẽ được thông báo về quy trình bắt đầu kết nối và cả hai bên đều có cơ hội chấp nhận hoặc từ chối kết nối.

Sau khi cả hai bên phản hồi, mỗi bên sẽ nhận được thông báo về kết quả. Nếu cả hai bên đều chấp nhận kết nối, thì kết nối đó được coi là đã thiết lập và quá trình truyền dữ liệu có thể bắt đầu.

Trao đổi dữ liệu

Sau khi kết nối được thiết lập, việc sử dụng API tiếp theo sẽ đối xứng, vì vậy, sẽ không còn sự phân biệt giữa Nhà quảng cáo và Trình khám phá nữa.

Giờ đây, cả hai bên đều có thể trao đổi dữ liệu. Có 3 loại Tải trọng được hỗ trợ:

  • Byte: Mảng byte giới hạn ở 32k; các mảng này phù hợp để gửi những nội dung như siêu dữ liệu hoặc thông báo kiểm soát.
  • Tệp: Tệp có kích thước bất kỳ; các tệp này được chuyển từ ứng dụng sang giao diện mạng với mức sao chép tối thiểu trên các ranh giới quy trình.
  • Luồng: Luồng dữ liệu được tạo ngay lập tức, chẳng hạn như trong trường hợp âm thanh/video được ghi lại, mà không biết trước kích thước cuối cùng.

Các bên nhận sẽ được thông báo về dữ liệu mới nhận được và mọi thông tin cập nhật về tiến trình, thông báo huỷ hoặc lỗi.

Các kết nối được thiết lập là song công, nghĩa là nhà quảng cáo và thiết bị phát hiện có thể đồng thời gửi và nhận dữ liệu.

Thu thập dữ liệu

Khi bạn sử dụng Nearby SDK của Dịch vụ Google Play, hệ thống sẽ thu thập số liệu phân tích về mức sử dụng để cải thiện trải nghiệm.

  • Chỉ số hiệu suất: Độ trễ, độ tin cậy và thông lượng của quá trình khám phá và kết nối được thu thập khi quét và kết nối với các thiết bị bằng Nearby SDK.
  • Thông tin thiết bị: Chúng tôi thu thập và liên kết kiểu máy, quốc gia, phiên bản bản dựng và tên gói ứng dụng với các chỉ số hiệu suất để xác định các phân khúc theo khu vực và thiết bị cụ thể.

Người dùng cuối có thể cho phép hoặc từ chối hoạt động thu thập này bằng cách chuyển đến phần Cài đặt > Google > Dữ liệu sử dụng và chẩn đoán.