Tương tác

Từ quan điểm của các ứng dụng Android, mọi cảm biến Android là một thực thể độc lập, có nghĩa là không có sự tương tác giữa các cảm biến khác nhau.

  • Điều này đúng mặc dù một số cảm biến Android có thể chia sẻ cùng một cảm biến vật lý bên dưới
  • Ví dụ: bộ đếm bước, chuyển động quan trọng và gia tốc kế, tất cả đều dựa trên cùng một gia tốc kế vật lý, phải có thể hoạt động đồng thời
  • Điều này cũng đúng với các phiên bản đánh thức và không đánh thức của cùng một cảm biến

Các cảm biến Android phải có thể hoạt động đồng thời và độc lập với nhau. Có nghĩa là, bất kỳ hành động nào trên một cảm biến Android không được ảnh hưởng đến hoạt động của các cảm biến khác.

Cụ thể, ở cấp độ HAL:

  • kích hoạt một cảm biến
  • hủy kích hoạt cảm biến
  • thay đổi tần số lấy mẫu của cảm biến
  • thay đổi độ trễ báo cáo tối đa của cảm biến

không thể gây ra:

  • một cảm biến khác được kích hoạt để ngừng hoạt động
  • một cảm biến được kích hoạt khác để thay đổi tốc độ lấy mẫu
  • một cảm biến được kích hoạt khác để giảm chất lượng các phép đo của nó
  • một cảm biến không được kích hoạt khác để bắt đầu cung cấp các sự kiện

Bất kỳ hành động nào ở trên cũng không thể ngăn cản các hành động (kích hoạt, hủy kích hoạt và thay đổi thông số) trên một cảm biến khác thành công. Ví dụ, việc chúng ta có thể kích hoạt bộ đếm bước hay không phải độc lập với việc gia tốc kế hiện đang được kích hoạt hay không.

Một ví dụ quan trọng khác, cảm biến đánh thức được kích hoạt ở 5Hz phải tạo ra các sự kiện ở khoảng 5Hz, ngay cả khi biến thể không đánh thức của nó đang được kích hoạt ở 100Hz.