Google Home Sample App for Matter sử dụng Google Home Mobile SDK để tạo một ứng dụng Android tương tự như Google Home app (GHA). Ứng dụng mẫu này cung cấp các tính năng sau:
- Uỷ quyền cho các thiết bị Matter thực và ảo cho Fabric Android cục bộ
- Uỷ quyền thiết bị thực và ảo cho một fabric phát triển
- Điều khiển các thiết bị trên nền tảng phát triển, ví dụ: bật đèn
- Các tính năng nhiều quản trị viên cho phép bạn chia sẻ thiết bị trên Fabric cho phát triển với các ứng dụng khác và ngược lại, có thể đưa vào Fabric cho phát triển các thiết bị được chia sẻ từ các ứng dụng khác
- Tiện ích dành cho nhà phát triển
Hướng dẫn này mô tả cách cài đặt tệp APK Sample App for Matter và sử dụng tệp này để uỷ quyền, kiểm soát và chia sẻ thiết bị Matter.
Để tải mã nguồn xuống, tìm hiểu cách tích hợp Mobile SDK và tuỳ chỉnh màn hình trong Android Studio, hãy thử lớp học lập trình Sample App for Matter của chúng tôi.
Chuyển đến lớp học lập trình về Sample App for Matter
Điều kiện tiên quyết
- Thiết bị chạy Android O (8.1, API cấp 27) trở lên để kiểm thử. Để đảm bảo rằng thiết bị của bạn có hỗ trợ Matter mới nhất, hãy xem hướng dẫn Xác minh mô-đun và dịch vụ Matter.
- Tạo một thiết bị Matter có chức năng Bật/Tắt. Ứng dụng mẫu này hoạt động với một thiết bị ảo và ESP32.
- Thiết bị ảo Matter (MVD). Để giảm thiểu các vấn đề về môi trường, bạn nên bắt đầu sử dụng MVD. Nếu gặp vấn đề, bạn sẽ dễ dàng điều tra hơn nếu ứng dụng mẫu được sử dụng chống lại MVD.
- Tạo Thiết bị ảo Matter bằng ứng dụng
rootnode_dimmablelight_bCwGYSDpoe
. Khi bạn Tạo chế độ tích hợp Matter trong Google Home Developer Console, hãy sử dụng0xFFF1
làm Mã nhà cung cấp và0x8000
làm Mã sản phẩm. - Tạo thiết bị Espressif bằng
all-clusters-app
. Khi bạn Tạo chế độ tích hợp Matter trong Developer Console, hãy sử dụng0xFFF1
làm Mã nhà cung cấp và0x8001
làm Mã sản phẩm.
Bạn không cần thiết bị trung tâm, chẳng hạn như Google Nest Hub (2nd gen), để uỷ quyền và điều khiển các thiết bị bằng Sample App for Matter.
Cài đặt
Chuyển đến phần Bản phát hành trong kho lưu trữ GitHub của Sample App for Matter. Đối với bản phát hành gần đây nhất, hãy tìm trong phần Tài sản tệp APK có tên
GHSAFM-version-default-debug.apk
. Đừng chọntargetcommissioner
.Cài đặt Cầu gỡ lỗi Android (adb):
Kết nối thiết bị Android của bạn với USB và bật tính năng File Transfer (Chuyển tệp), sau đó cài đặt tệp APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Thiết bị uỷ quyền
Khi chạy ứng dụng mẫu lần đầu tiên, bạn sẽ thấy một hộp thoại có một đường liên kết đến lớp học lập trình Sample App for Matter. Nếu chọn Không hiển thị lại thông báo này, bạn có thể đưa hộp thoại này trở lại bất cứ lúc nào bằng cách cập nhật lựa chọn ưu tiên trong phần Quản trị của ứng dụng.
Trong các bước tiếp theo, bạn sẽ thêm một thiết bị Matter vào Fabric Android cục bộ, cùng với một fabric phát triển chỉ dành cho ứng dụng mẫu.
Cấu trúc Matter là gì?
Fabric Matter là một miền tin cậy dùng chung giữa các thiết bị trong mạng gia đình, cho phép các thiết bị này giao tiếp với nhau.
Các thiết bị có thể có một hoặc nhiều fabric tương ứng với một nền tảng, ứng dụng hoặc nhóm thiết bị tương tác với nhau. Fabric có một mã nhận dạng duy nhất và các thiết bị dùng chung một bộ thông tin xác thực và tổ chức phát hành chứng chỉ (CA). Các thông tin xác thực này được chỉ định trong quá trình uỷ quyền Matter.
Để uỷ quyền cho thiết bị Matter, hãy hoàn tất các bước sau:
Nhấn vào nút
Thêm thiết bị để bắt đầu quy trình uỷ quyền.Tiếp theo, quyền kiểm soát được chuyển sang Google Play services, được khởi chạy từ lệnh gọi đến Mobile SDK. Để chứng minh quyền sở hữu, hãy Quét mã QR hoặc nhấn vào Sử dụng mã ghép nối.
Khi quá trình uỷ quyền hoàn tất, hãy nhập Device Name (Tên thiết bị), sau đó nhấn vào Done (Xong).
Thiết bị của bạn hiện đã kết nối với cả Fabric Android cục bộ và Fabric phát triển.
Tất cả công việc uỷ quyền và màn hình liên quan đều do Play services xử lý khi uỷ quyền thiết bị. Điều này mang lại trải nghiệm nhất quán cho người dùng và không cần xử lý các quyền nhạy cảm, chẳng hạn như thông tin xác thực Wi-Fi và luồng.
Điều khiển thiết bị
Fabric cho phát triển tạo thông tin xác thực để điều khiển các thiết bị Matter ngay từ ứng dụng mẫu.
Trên màn hình chính, bạn có thể bật hoặc tắt thiết bị. Nhấn vào thiết bị để xem thông tin chi tiết về thiết bị.
Chia sẻ thiết bị
Việc chia sẻ thiết bị được gọi là quy trình nhiều quản trị viên trong quy cách Matter. Sau khi thiết bị được uỷ quyền cho ứng dụng mẫu, bạn có thể dễ dàng chia sẻ thiết bị đó với các hệ sinh thái khác.
Để chia sẻ thiết bị Matter với các hệ sinh thái khác, bạn cần cài đặt một nền tảng khác trên thiết bị Android. Nền tảng bên ngoài này sẽ trở thành đơn vị uỷ quyền mục tiêu. Chúng tôi đã tạo một bản sao khác của ứng dụng mẫu mà bạn có thể sử dụng làm bên uỷ quyền mục tiêu.
Chuyển đến phần Bản phát hành trong kho lưu trữ GitHub của Sample App for Matter. Đối với bản phát hành gần đây nhất, hãy tìm trong phần Tài sản tệp APK có tên
GHSAFM-version-targetcommissioner-debug.apk
. Đừng chọndefault
.Cài đặt trình uỷ quyền mục tiêu.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
Trên màn hình chính, hãy nhấn vào thiết bị để hiển thị thông tin về thiết bị. Nhấn vào Chia sẻ.
Ứng dụng mẫu gọi API Chia sẻ Mobile SDK và một lần nữa, quyền kiểm soát được chuyển sang Play services.
Một trang chia sẻ sẽ hiển thị, cho phép bạn chọn ứng dụng hoặc nền tảng mà bạn muốn ghép nối thiết bị. Màn hình này cung cấp hai cách để bạn chia sẻ thiết bị:
- Theo cách thủ công thông qua mã thiết lập để chia sẻ với ứng dụng uỷ quyền mục tiêu
- Với một ứng dụng Android cục bộ đã đăng ký làm ủy viên Matter
Ứng dụng của người được uỷ quyền mục tiêu được gắn nhãn GHSAFM-TC. Nhấn vào thực thể này của ứng dụng mẫu để chia sẻ thiết bị của bạn.
Tiếp theo, ứng dụng bên ngoài (trình uỷ quyền mục tiêu) sẽ hoàn tất việc uỷ quyền thiết bị vào fabric của riêng ứng dụng đó.
Cài đặt
Trên màn hình chính, hãy nhấp vào biểu tượng cài đặt
. Tại đây, bạn có thể cập nhật lựa chọn ưu tiên của người dùng, yêu cầu trợ giúp và tìm hiểu thêm về ứng dụng.Thông báo về nửa trang
Trên màn hình Cài đặt, bạn có thể chọn tắt thông báo khám phá có thể tính phí chủ động cho các thiết bị Matter.
Nếu ứng dụng của bạn cung cấp quy trình khám phá hoặc uỷ quyền Matter riêng, bạn nên chặn các thông báo này để tránh bị gián đoạn. Hãy xem phần Bỏ qua thông báo khám phá có thể tính phí để biết thêm thông tin.
Tiện ích dành cho nhà phát triển
Trên màn hình Cài đặt, bạn cũng có thể truy cập vào Tiện ích cho nhà phát triển.
Để xem lại nội dung của kho lưu trữ DataStore về Lựa chọn ưu tiên của người dùng và Thiết bị trong Logcat, hãy hoàn tất các bước sau:
Nhấp vào Ghi nhật ký nội dung kho lưu trữ.
Nhấp vào OK để mở hộp thoại, sau đó đánh dấu vào Logcat.
Phản hồi và trợ giúp
Để gửi ý kiến hoặc phản hồi về cách chúng tôi có thể cải thiện trải nghiệm phát triển bằng Sample App for Matter, hãy hoàn tất Biểu mẫu phản hồi của chúng tôi.
Gửi ý kiến phản hồi cho chúng tôi
Nếu bạn gặp vấn đề với Sample App for Matter, hãy thử hoàn tất các bước để xác minh môi trường của bạn:
Nếu có câu hỏi về cách sử dụng ứng dụng mẫu hoặc phát hiện lỗi mã, bạn có thể gửi vấn đề đến Công cụ theo dõi lỗi trong kho lưu trữ GitHub:
Để nhận hướng dẫn chính thức của Google về các câu hỏi kỹ thuật, hãy sử dụng Diễn đàn nhà phát triển nhà thông minh:
Để nhận hỗ trợ kỹ thuật từ cộng đồng, hãy sử dụng thẻ google-smart-home
trên
Stack Overflow: