Kết nối Wi-Fi dễ dàng

Android 10 ra mắt tính năng hỗ trợ giao thức Wi-Fi Easy Connect, còn gọi là giao thức cấp phép thiết bị (DPP). Wi-Fi Easy Connect là một tính năng do Wi-Fi Alliance (WFA) giới thiệu để thay thế cho Wi-Fi Protected Setup (WPS). WPS không còn được dùng nữa trong Android 9.

Wi-Fi Easy Connect cung cấp một phương thức đơn giản và an toàn để:

  • Kết nối thiết bị Wi-Fi trên bo mạch (bao gồm cả thiết bị không có màn hình) với mạng mà không cần nhập mật khẩu.
  • Tham gia mạng Wi-Fi mà không cần biết hoặc nhập mật khẩu.

Quá trình khởi động và xác thực được định cấu hình bằng URI (được thu nạp bằng cách quét mã QR (bằng máy ảnh)) hoặc được định cấu hình ngoài băng tần, ví dụ: sử dụng BLE hoặc NFC.

Wi-Fi Easy Connect sử dụng kênh mã hoá để gửi thông tin xác thực Wi-Fi giữa các thiết bị và vì các khung thao tác công khai được sử dụng nên các thiết bị có thể sử dụng các điểm truy cập hiện có.

Android 10 chỉ hỗ trợ Wi-Fi Easy Connect ở chế độ trình khởi tạo (không hỗ trợ chế độ trình phản hồi). Các chế độ hoạt động sau đây được hỗ trợ:

  • Trình định cấu hình của trình khởi tạo: Gửi thông tin xác thực mạng đến một thiết bị mới bằng cách quét mã QR của thiết bị đó.
  • Người khởi tạo – Người đăng ký: Tham gia một mạng bằng cách quét mã QR của mạng đó.

Android 10 hỗ trợ giao thức khoá được chia sẻ trước (PSK) cho WPA2 và giao thức xác thực đồng thời các giá trị bằng nhau (SAE) cho WPA3.

Wi-Fi Easy Connect chỉ được hỗ trợ ở chế độ máy khách (không hỗ trợ chế độ SoftAP).

Triển khai

Để hỗ trợ tính năng Wi-Fi Easy Connect, hãy triển khai giao diện supplicant được cung cấp trong Dự án nguồn mở Android (AOSP). Tuỳ thuộc vào giao diện đã triển khai, phần này nằm ở:

Những thành phần sau đây là bắt buộc để hỗ trợ DPP:

  • Các bản vá nhân Linux để hỗ trợ DPP:

    • cfg80211
    • nl80211
  • wpa_supplicant hỗ trợ DPP

  • Trình điều khiển Wi-Fi hỗ trợ DPP

  • Phần mềm cơ sở Wi-Fi hỗ trợ DPP

Các API công khai có sẵn trong Android 10 để các ứng dụng sử dụng:

Bật Wi-Fi Easy Connect

Để bật tính năng Wi-Fi Easy Connect trong khung Android, hãy đưa tuỳ chọn biên dịch CONFIG_DPP vào tệp cấu hình wpa_supplicant, android.config:

# Easy Connect (Device Provisioning Protocol - DPP)
CONFIG_DPP=y

Xác nhận kết quả

Để kiểm thử cách triển khai, hãy chạy các chương trình kiểm thử sau.

Kiểm thử đơn vị

Chạy DppManagerTest để xác minh hành vi của cờ chức năng cho DPP.

atest DppManagerTest

Kiểm thử VTS

Nếu giao diện HIDL được triển khai, hãy chạy VtsHalWifiSupplicantV1_2TargetTest để kiểm thử hành vi của supplicant HAL v1.2.

Nếu giao diện AIDL được triển khai, hãy chạy VtsHalWifiSupplicantStaIfaceTargetTest để kiểm thử hành vi của HAL của ứng dụng yêu cầu.