ارزیابی سخت‌افزار

ارزیابی سخت‌افزار ویژگی‌های کمی سه جلوه لمسی هدف را که با روش‌های رایج مورد استفاده برای فراخوانی لمسی‌ها نمونه‌برداری شده است ارائه می‌دهد. در پایان ارزیابی، عملکرد هر دستگاه برای هر اثر لمسی هدف را می‌توان در نقشه عملکرد اعمال کرد تا نتیجه‌گیری شود.

نقشه عملکرد نتایج ارزیابی سخت‌افزار را از چندین دستگاه Android فعلی نشان می‌دهد. هدف این است که دستگاه هدف را بااستفاده از مقایسه‌ای زمینه‌ای نسبی ارزیابی کنیم (به‌جای قضاوت موفق یا ناموفق). پرسش‌های مشخصی که حول این مفهوم ساختار یافته‌اند عبارت‌اند از: با توجه به سطح قیمت و نوع محرک تلفنم، عملکرد آن در مقایسه با رقبا چگونه است؟ آیا نتایج انتظارات من را برآورده می‌کند؟ اگر نه، چه چیزی نیاز به بهبود دارد؟

راه‌اندازی فناوری لمسی

شکل ۱. نمای کلی فرایند ارزیابی سخت‌افزار لمسی

این ارزیابی نتایج سه روش را در چارچوب لمسی Android مشاهده می‌کند.

جلوه ۱: ثابت‌های لمسی کوتاه ازپیش تعریف‌شده

VibrationEffect.EFFECT_CLICK

این ثابت، اثر خط پایه یا مخرج مشترک در نگاشت HAL-API است که در ثابت‌های نگاشت بین HAL و API ارائه شده است. این کلید به پرکاربردترین جلوه HapticFeedbackConstants.KEYBOARD_PRESS اختصاص داده شده است. ارزیابی این جلوه به شما کمک می‌کند آمادگی دستگاه مقصدتان را برای لمس‌های واضح تعیین کنید.

جلوه ۲: جلوه لمسی سفارشی کوتاه

VibrationEffect.createOneShot(20,255)

برای تکانه‌های سفارشی کوتاه، حداکثر آستانه توصیه‌شده برای تعریف مدت ۲۰ میلی‌ثانیه است. تک‌ضربه‌ای که طول آن بیشتر از ۲۰ میلی‌ثانیه باشد توصیه نمی‌شود زیرا به‌عنوان لرزش وزوزدار درک می‌شود.

جلوه لمسی سفارشی کوتاه

شکل ۲. جلوه لمسی سفارشی کوتاه

جلوه ۳: جلوه لمسی سفارشی طولانی با تغییر دامنه

VibrationEffect.createWaveform(timings[], amplitudes[], int repeat)

توانایی تولید دامنه‌های مختلف برای جلوه‌های لمسی سفارشی یکی از نشانگرهای ارزیابی قابلیت‌های دستگاه برای لمس غنی است. ‫timings [ ] و amplitudes [ ] توصیه‌شده به‌ترتیب {500, 500} و {128, 255} است. این کار روند افزایشی دامنه را از ۵۰٪ تا ۱۰۰٪ با نرخ نمونه‌برداری ۵۰۰ میلی‌ثانیه ارائه می‌دهد.

تغییرات دامنه

شکل ۳. جلوه لمسی سفارشی طولانی با تغییر دامنه

برای بررسی سریع قابلیت‌های سخت‌افزاری کنترل دامنه برای «افکت ۳»، Vibrator.hasAmplitudeControl() را امتحان کنید. نتیجه باید true باشد تا VibrationEffect.createWaveform با دامنه متغیر همان‌طور که درنظر گرفته شده است اجرا شود.