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 cộng tác: Ghi lại ý tưởng cùng với những người tham gia ở gần trên một bảng trắng ảo dùng chung.
  • Chơi trò chơi nhiều người chơi trên cùng một máy: Thiết lập 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 trò chơi trên nhiều màn hình: Sử dụng điện thoại hoặc máy tính bảng làm tay điều khiển trò chơi để chơi 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

Tính năng Kết nối lân cận 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 thức ngang hàng hoàn toàn không kết nối mạng. 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 thế mạnh của từng công nghệ đồng thời khắc phục điểm yếu tương ứng của chúng. Điều này giúp loại bỏ 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 các 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 được chia thành hai 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, Người quảng cáo sẽ quảng cáo chính họ, trong khi Người khám phá sẽ khám phá Người 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ừ Người khám phá đến Nhà quảng cáo sẽ bắt đầu một quy trình xác thực đối xứng, dẫn đến việc cả hai bên đều chấp nhận (hoặc từ chối) yêu cầu kết nối một cách độc lập.

Sau khi cả hai bên chấp nhận yêu cầu kết nối, kết nối đượ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 đó 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ẽ hiển thị với các trình khám phá khác và trình khám phá sẽ được thông báo khi tìm thấy hoặc mất một nhà quảng cáo mới.

Đang thiết lập kết nối

Khi muốn kết nối với một nhà quảng cáo lân cậ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 sẽ 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 chuyể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 sau đó sẽ đối xứng, vì vậy, không còn sự phân biệt giữa Người quảng cáo và Người khám phá.

Giờ đây, cả hai bên đều có thể trao đổi dữ liệu. Có 3 loại Trọng tải đượ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 điều khiển.
  • 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 số lần sao chép tối thiểu qua ranh giới quy trình.
  • Luồng: Luồng dữ liệu được tạo nhanh, như trong trường hợp âm thanh/video đã ghi, không biết trước kích thước cuối cùng.

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

Các kết nối được thiết lập là song công hoàn toàn, nghĩa là nhà quảng cáo và người khám phá 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 SDK Nearby của Dịch vụ Google Play, dữ liệu phân tích về việc sử dụng sẽ được thu thập để cải thiện trải nghiệm.

  • Chỉ số hiệu suất: Độ trễ, độ tin cậy và thông lượng khi khám phá và kết nối sẽ được thu thập khi quét tìm và kết nối với các thiết bị bằng SDK Thiết bị ở gần.
  • Thông tin thiết bị: Kiểu thiết bị, quốc gia, phiên bản bản dựng và tên gói ứng dụng được thu thập và liên kết với các chỉ số hiệu suất để xác định các lát cắt 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 việc thu thập này bằng cách chuyển đến phần Cài đặt > Google > Sử dụng và chẩn đoán.