نگاشت ثابتهای HAL-API که در بخش ثابتهای Map بین HAL و API معرفی شده است، توسط اصول طراحی UX که اکیداً توصیه میشوند، هدایت میشود. اصول طراحی UX، اساس چگونگی، زمان و نوع استفاده از APIهای لمسی اندروید را تعریف میکنند. برای کسب اطلاعات بیشتر در مورد این اصول بنیادی، به بخش «فناوری پیشرفته لمسی: زمان، چیستی و چگونگی APIهای لمسی جدید» مراجعه کنید.

شکل 1. نگاشت ثابت HAL-API: مدل گسسته
جلوههای لمسی را انتخاب کنید
بر اساس قدرت لمسی ( VibrationEffect )
EFFECT_CLICK بهترین نقطه شروع برای تعیین قدرت لمسی مورد نظر شما ( VibrationEffect ) است: این مقدار، حد وسط بین قدرت لمسی "سبک" EFFECT_TICK و قدرت لمسی "سنگین" EFFECT_HEAVY_CLICK است. با شروع از EFFECT_CLICK ، میتوانید با افزودن قدرت با EFFECT_HEAVY_CLICK ، انرژی مفهومی را افزایش یا کاهش دهید، یا با EFFECT_TICK قدرت را کاهش دهید. به خاطر داشته باشید، EFFECT_DOUBLE_CLICK بالاترین انرژی مفهومی را ارائه میدهد زیرا تکرار میشود.

شکل ۲. تنظیمات قدرت لمسی
توسط رویدادهای ورودی و عناصر رابط کاربری ( HapticFeedbackConstants )
اگر هدف شما با رویدادهای ورودی خاص (مانند لمس طولانی یا کشیدن انگشت) یا عناصر رابط کاربری (مانند صفحه کلید) مرتبط است، ثابتهای لمسی از پیش تعریف شده را در HapticFeedbackConstants پیدا کنید. نام هر ثابت به موارد استفاده خاصی مانند KEYBOARD_PRESS یا LONG_PRESS اشاره دارد.
شبیهسازی رویدادهای فشردن دکمه در دنیای واقعی
بازخورد لمسی رویدادهای ورودی (دکمههای نرم مجازی) میتواند فشردن دکمهها را با استفاده از موجودیتهای فیزیکی (مانند دکمههای سخت مکانیکی) شبیهسازی کند.
رویداد ورودی: جریان تعامل دو به دو
رویداد کلیک برای شبیهسازی رفتار یک دکمه مکانیکی طراحی شده است که فشرده و سپس رها میشود. انرژی دریافتی از ضربه مکانیکی ناشی از فشردن دکمه بیشتر از انرژی دریافتی از رها کردن دکمه است. بنابراین، بازخورد لمسی برای فشردن دکمه قویتر از بازخورد لمسی برای رها کردن دکمه است.

شکل ۳. اثرات لمسی بر اساس رویداد ورودی دودویی
قدرت لمسی: کارایی فشار دادن دکمه
رویدادهای ورودی با تعامل کوتاهتر و سبکتر، با لمسهای سبکتر مرتبط هستند. رویدادهای ورودی با تعامل طولانیتر و عمیقتر، با لمسهای قویتر مرتبط هستند.

شکل ۴. جلوههای لمسی بر اساس قابلیت دسترسی
شبیهسازی بافت مجازی در رویداد ورودی ژست
ورودیهای مبتنی بر اشاره (مانند اسکرول کردن یا کشیدن انگشت) میتوانند در حین حرکت انگشت روی صفحه نمایش، با بافتهای لمسی مجازی و رابطهای کاربری بصری هماهنگ شوند، برای مثال، هنگام حرکت انگشت روی رابط کاربری ساعت با عناصر رابط کاربری علامت تیک مجازی، بازخورد لمسی مکرر ایجاد شود.
افکتهای بافتهای لمسی مجازی قرار است تکرار شوند. این امر اغلب باعث میشود انرژی درک شده بیشتر از دامنه باشد (وقتی افکت بدون تکرار یا فقط یک بار فراخوانی میشود). به همین دلیل، ثابتهای لمسی که برای بافتهای لمسی مجازی طراحی شدهاند (مانند CLOCK_TICK یا TEXT_HANDLE_MOVE ) باید نامحسوس باشند تا حس حرکت را از طریق نشانههای تکراری ایجاد کنند.

شکل ۵. جلوههای لمسی برای شبیهسازی بافت مجازی
احساسات را لحاظ کنید
برای گنجاندن احساسات مثبت یا منفی در جلوههای لمسی، برای جلب توجه کاربر، احساسات منفی را با شدت بیشتری نشان دهید.

شکل ۶. جلوههای لمسی با احساسات
از سر و صدای قابل شنیدن ناشی از لرزش طولانی جلوگیری کنید
برای جلوگیری از نویز شنیداری ناشی از ارتعاش طولانی برای لمسهای توجه، الگو را به آرامی شتاب دهید تا یک اثر افزایش سرعت ایجاد شود. این کار را با استفاده از createWaveform(long[] timings, int[] amplitudes, int repeat) انجام دهید.

شکل 7. اثر افزایش ارتعاش طولانی مدت