اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
تقييم الجهاز
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتضمن تقييم الأجهزة تحديد ثلاثة تأثيرات لمسية، تم تصنيفها على أنّها التأثيرات 1
و2و3 لهذا التقييم المحدّد.
التأثير 1: قيم ثابتة قصيرة محدّدة مسبقًا لللمس
الثابت
VibrationEffect.EFFECT_CLICK
هو التأثير الأساسي أو القاسم المشترك في تعيين HAL-API
المقدَّم في تعيين الثوابت بين HAL وواجهة برمجة التطبيقات
. ويتم ربطه بالتأثير الأكثر استخدامًا، وهو HapticFeedbackConstants.KEYBOARD_PRESS
. يساعد تقييم هذا التأثير في تحديد مدى جاهزية جهازك المستهدَف لتوفير ميزة
اللمسات الواضحة.
التأثير 2: تأثير لمسي مخصّص قصير
الثابت
VibrationEffect.createOneShot(20,255)
مخصّص للتأثيرات اللمسية المخصّصة. بالنسبة إلى النبضات المخصّصة القصيرة والفردية، فإنّ 20 ملي ثانية هي الحدّ الأقصى المُقترَح لتحديد المدة. لا يُنصح باستخدام نبضة واحدة تزيد مدتها عن 20 ملي ثانية لأنّها تُعتبر
اهتزازًا
مزعجاً.
الشكل 19: تأثير لمسي مخصّص قصير
التأثير 3: تأثير لمسي مخصّص طويل مع اختلاف في الشدة
يُستخدَم الثابت VibrationEffect.createWaveform(timings[], amplitudes[], int
repeat)
للتأثيرات المخصّصة الطويلة التي تتضمّن اختلافًا في الشدة. إنّ القدرة على توليد نطاقات متفاوتة للتأثيرات الحسية المخصّصة هي أحد المؤشرات التي تُستخدَم لتقييم إمكانات الجهاز في ما يتعلّق بتأثيرات
الحسية الغنية. timings []
وamplitudes []
المُقترَحان هو {500, 500}
و{128, 255}
،
على التوالي، ما يعرض مؤشرًا متزايدًا للسعة من% 50 إلى %100،
بمعدل أخذ عينات يبلغ 500 ملي ثانية.
الشكل 20: تأثير لمسي مخصّص طويل مع اختلاف في الشدة
للتحقّق من إمكانات الجهاز للتحكّم في الشدة للتأثير 3، استخدِم Vibrator.hasAmplitudeControl()
الطريقة. يجب أن تكون النتيجة true
لتنفيذ
VibrationEffect.createWaveform
بسعة متغيرة على النحو المطلوب.
الشكل 21: تقييم المستخدِم للتأثيرات الحسية 1 و2 و3
إجراء تقييم ذاتي
للتحقّق سريعًا من الترابط، يمكنك إجراء تقييم ذاتي أولاً. الهدف من
التقييم الذاتي هو مراقبة شدة التأثيرات الحسية لتحديد ما إذا كان بإمكان الجهاز إنشاء تأثيرات حسية بشدّات يمكن للمستخدم تمييزها.
يظهر سؤال محدّد حول هذا المفهوم على النحو التالي: هل يمكن للجهاز توليد تأثيرات لمسية محسوسة للمستخدمين على النحو المتوقّع؟ تساعدك الإجابة عن
هذا السؤال في تجنُّب اللمس غير الناجح، بما في ذلك اللمس غير المحسوس
الذي لا يمكن للمستخدمين الشعور به، أو اللمس غير المقصود الذي لا تُنشئ فيه الموجات الصوتية
أنماطًا على النحو المطلوب.
ننصح بشدة بإجراء تقييمات جودة متقدّمة. تحدِّد تقييمات الجودة المتقدمة السمات الكميّة للتأثيرات الحسية من أجل تنفيذ تأثيرات حسية عالية الجودة. عند الانتهاء، من المفترض أن يتمكّن المصنّعون من رصد حالة تقنية اللمس الحالية، ما يعني أنّه يمكنهم تحديد أهداف لتحسين الجودة الإجمالية. يُرجى الاطّلاع على تقييم
الأجهزة.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Assess the hardware\n\nHardware assessment involves defining three haptic effects, labeled Effects 1,\n2, and 3 for this specific assessment.\n\nEffect 1: Predefined short haptic constants\n-------------------------------------------\n\nThe\n[`VibrationEffect.EFFECT_CLICK`](https://developer.android.com/reference/android/os/VibrationEffect.html#EFFECT_CLICK)\nconstant is the baseline effect or common denominator in the HAL-API mapping\nprovided in [Map constants between HAL and API](/docs/core/interaction/haptics/haptics-map-constants)\n. It's mapped with the most used effect, [`HapticFeedbackConstants.KEYBOARD_PRESS`](https://developer.android.com/reference/android/view/HapticFeedbackConstants#KEYBOARD_PRESS)\n. Assessing this effect helps determine the readiness of your target device for\n[*clear haptics*](/docs/core/interaction/haptics/haptics-ux-foundation#clear-haptics).\n\nEffect 2: Short custom haptic effect\n------------------------------------\n\nThe\n[`VibrationEffect.createOneShot(20,255)`](https://developer.android.com/reference/android/os/VibrationEffect#createOneShot(long,%20int))\nconstant is for custom haptic effects. For short, single custom impulses,\n20 ms is the recommended maximum threshold to define duration. A single\nimpulse longer than 20 ms isn't recommended because it's perceived as a\n[*buzzy\nvibration*](/docs/core/interaction/haptics/haptics-ux-foundation#buzzy-vibration).\n\n**Figure 19.** Short custom haptic effect\n\nEffect 3: Long custom haptic effect with amplitude variation\n------------------------------------------------------------\n\nThe [`VibrationEffect.createWaveform(timings[], amplitudes[], int\nrepeat)`](https://developer.android.com/reference/android/os/VibrationEffect#createWaveform(long%5B%5D,%20int%5B%5D,%20int))\nconstant is for long custom effects with amplitude variation. The ability to\nproduce varying amplitudes for custom haptic effects is one of the indicators to\nevaluate the device's capabilities for [*rich\nhaptics*](/docs/core/interaction/haptics/haptics-ux-foundation#ease-in). The\nrecommended `timings []` and `amplitudes []` are `{500, 500}` and `{128, 255}`,\nrespectively, which presents an increasing trend of amplitude from 50% to 100%,\nwith a 500 ms sampling rate.\n\n**Figure 20.** Long custom haptic effect with amplitude variation\n\nTo check the hardware capabilities of amplitude control for Effect 3, use the\n[`Vibrator.hasAmplitudeControl()`](https://developer.android.com/reference/android/os/Vibrator#hasAmplitudeControl())\nmethod. The result has to be `true` to execute\n[`VibrationEffect.createWaveform`](https://developer.android.com/reference/android/os/VibrationEffect#createWaveform(long%5B%5D,%20int%5B%5D,%20int))\nwith varying amplitude as intended.\n\n**Figure 21.** Subject assessment of haptic effect 1, 2, and 3\n\n### Perform a subjective assessment\n\nFor a quick coherence check, perform a subjective assessment first. The goal of\nthe subjective assessment is to observe the amplitude of the haptic effects to\ndetermine whether the device can generate haptics with human-perceptible\namplitudes.\n\nA specific question structured around this notion looks like this: *Can the\ndevice produce perceptible haptic effects to the users as expected?* Answering\nthis question helps you avoid *failed haptics*, including imperceptible haptics\nthat users can't feel, or unintended haptics where waveforms don't produce\npatterns as intended.\n\n### Perform an advanced assessment\n\nPerforming advanced quality assessments is highly recommended. Advanced quality\nassessments characterize quantifiable attributes of haptic effects to implement\n*quality haptics* . When finished, device manufacturers should be able to\ndiagnose the current haptic status, which means they can set goals to improve\nthe overall quality. See [Hardware\nassessment](/docs/core/interaction/haptics/hardware)."]]