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.
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.
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.
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.
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.
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.
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)
.
Hình 7. Hiệu ứng tăng dần độ rung dài