Thiết kế trải nghiệm người dùng xúc giác

Việc liên kết hằng số HAL-API được giới thiệu trong bước 2 của danh sách kiểm tra tính năng haptics được điều khiển bởi các nguyên tắc thiết kế trải nghiệm người dùng được đề xuất. Nguyên tắc thiết kế trải nghiệm người dùng xác định nền tảng về cách thức, thời điểm và nội dung cần sử dụng khi dùng API haptics của Android. Hãy xem bài viết Cảm ứng nâng cao: Thời điểm, nội dung và cách thức sử dụng API cảm ứng mới để tìm hiểu thêm về các nguyên tắc cơ bản này.

Ánh xạ hằng số

Hình 1. Ánh xạ hằng số HAL-API: Mô hình rời rạc

Chọn hiệu ứng xúc giác

Theo cường độ phản hồi xúc giác (VibrationEffect)

EFFECT_CLICK là nơi tốt nhất để bắt đầu khi xác định cường độ xúc giác ưu tiên của bạn (VibrationEffect): đây là trung vị giữa xúc giác "nhẹ" của EFFECT_TICK và xúc giác "nặng" của EFFECT_HEAVY_CLICK. Bằng cách bắt đầu với EFFECT_CLICK, bạn có thể tăng hoặc giảm năng lượng khái niệm bằng cách tăng độ mạnh với EFFECT_HEAVY_CLICK hoặc giảm độ mạnh với EFFECT_TICK. Xin lưu ý rằng EFFECT_DOUBLE_CLICK mang đến năng lượng khái niệm cao nhất vì nó lặp lại.

Độ mạnh của hiệu ứng xúc giác

Hình 2. Chế độ cài đặt độ mạnh của phản hồi xúc giác

Theo sự kiện đầu vào và thành phần trên giao diện người dùng (HapticFeedbackConstants)

Nếu mục tiêu của bạn được liên kết với các sự kiện đầu vào cụ thể (như nhấn và giữ hoặc vuốt) hoặc các thành phần trên giao diện người dùng (như bàn phím), hãy tìm các hằng số xúc giác được xác định trước trong HapticFeedbackConstants. Tên của mỗi hằng số đề cập đến các trường hợp sử dụng cụ thể như KEYBOARD_PRESS hoặc LONG_PRESS.

Mô phỏng các sự kiện nhấn nút thực tế

Phản hồi xúc giác khi chạm của các sự kiện đầu vào (nút mềm ảo) có thể mô phỏng thao tác nhấn nút bằng các thực thể vật lý (chẳng hạn như nút cứng cơ học).

Sự kiện đầu vào: Luồng tương tác theo cặp

Sự kiện nhấp chuột được thiết kế để mô phỏng hành vi của một nút cơ học, sau đó được nhấn rồi nhả. Năng lượng cảm nhận được của xung cơ học từ một lần nhấn nút cao hơn so với khi thả nút. Do đó, phản hồi xúc giác cho thao tác nhấn nút sẽ mạnh hơn phản hồi xúc giác cho thao tác nhả nút.

Xúc tiến xúc giác khi nhấn và thả sự kiện

Hình 3. Hiệu ứng xúc giác theo sự kiện đầu vào nhị phân

Độ mạnh của phản hồi xúc giác: Mức độ dễ nhấn của nút

Các sự kiện đầu vào có mức độ tương tác ngắn hơn và nhẹ hơn được liên kết với phản hồi xúc giác nhẹ hơn. Các sự kiện đầu vào có thời lượng tương tác dài hơn và sâu hơn được liên kết với phản hồi xúc giác mạnh hơn.

Phản hồi xúc giác về khả năng tương tác khi nhấn

Hình 4. Hiệu ứng xúc giác theo khả năng hỗ trợ

Mô phỏng hoạ tiết ảo trong sự kiện nhập bằng cử chỉ

Dữ liệu đầu vào dựa trên cử chỉ (như vuốt hoặc cuộn) có thể được căn chỉnh với hoạ tiết xúc giác ảo trong khi ngón tay di chuyển trên màn hình cùng với giao diện người dùng trực quan, ví dụ: tạo phản hồi xúc giác lặp lại trong khi ngón tay di chuyển xung quanh giao diện người dùng đồng hồ có các thành phần giao diện người dùng đánh dấu nhịp độ ảo.

Các hiệu ứng cho kết cấu xúc giác ảo được lặp lại. Điều này thường làm cho cường độ cảm nhận được cao hơn biên độ (khi hiệu ứng được gọi không lặp lại hoặc chỉ một lần). Do đó, các hằng số xúc giác được thiết kế cho kết cấu xúc giác ảo (như CLOCK_TICK hoặc TEXT_HANDLE_MOVE) phải tinh tế để mang lại cảm giác chuyển động thông qua các tín hiệu lặp lại.

Hoạ tiết ảo

Hình 5. Hiệu ứng xúc giác để mô phỏng hoạ tiết ảo

Bao gồm ý kiến

Để đưa cảm xúc tích cực hoặc tiêu cực vào hiệu ứng xúc giác, hãy áp dụng cảm giác mạnh mẽ hơn cho cảm xúc tiêu cực để thu hút sự chú ý của người dùng.

Cảm xúc xúc giác

Hình 6. Hiệu ứng xúc giác có cảm xúc

Tránh tiếng ồn phát ra từ chế độ rung trong thời gian dài

Để tránh tiếng ồn có thể nghe thấy do rung lâu cho xúc giác chú ý, hãy tăng tốc mẫu một cách mượt mà để tạo hiệu ứng tăng tốc. Thực hiện việc này bằng cách sử dụng createWaveform(long[] timings, int[] amplitudes, int repeat).

Rung lâu

Hình 7. Hiệu ứng tăng dần độ rung dài