دستگاه‌های صفحه‌کلید

‫Android از انواع مختلف دستگاه‌های صفحه‌کلید ازجمله صفحه‌کلیدهای عملکرد ویژه (کنترل‌های صدا و روشن/خاموش)، صفحه‌کلیدهای فشرده QWERTY جاسازی‌شده، و صفحه‌کلیدهای خارجی به‌سبک رایانه شخصی با ویژگی‌های کامل پشتیبانی می‌کند.

این سند فقط صفحه‌کلیدهای فیزیکی را شرح می‌دهد. برای کسب اطلاعات درباره صفحه‌کلیدهای نرم (ویرایشگرهای روش ورودی)، به «کیت توسعه نرم‌افزار Android» مراجعه کنید.

طبقه‌بندی صفحه‌کلید

اگر یکی از شرایط زیر برقرار باشد، دستگاه ورودی به‌عنوان صفحه‌کلید طبقه‌بندی می‌شود:

  • دستگاه ورودی وجود هرگونه کد کلید Linux استفاده‌شده در صفحه‌کلیدها را گزارش می‌کند ازجمله 0 تا 0xff یا KEY_OK تا KEY_MAX.

  • دستگاه ورودی حضور هریک از کدهای کلید Linux که در دسته‌های بازی و پد بازی استفاده می‌شود، ازجمله BTN_0 تا BTN_9، BTN_TRIGGER تا BTN_DEAD، یا BTN_A تا BTN_THUMBR را گزارش می‌کند.

درحال‌حاضر، دسته‌های کنترل به‌عنوان صفحه‌کلید طبقه‌بندی می‌شوند زیرا دکمه‌های دسته کنترل و دسته بازی توسط رویدادهای EV_KEY به‌همان روشی که کلیدهای صفحه‌کلید گزارش می‌شوند، گزارش می‌شوند. بنابراین از فایل‌های تخصیص کلید برای پیکربندی دسته‌های بازی و پدهای بازی نیز استفاده می‌شود.

وقتی دستگاه ورودی به‌عنوان صفحه‌کلید طبقه‌بندی شد، سیستم فایل پیکربندی دستگاه ورودی و چیدمان صفحه‌کلید را برای صفحه‌کلید بار می‌کند.

سپس سیستم تلاش می‌کند تا ویژگی‌های اضافی دستگاه را تعیین کند.

  • اگر دستگاه ورودی کلیدهایی داشته باشد که به KEYCODE_Q نگاشت شده باشند، دستگاه دارای صفحه‌کلید الفبایی (درمقابل عددی) درنظر گرفته می‌شود. قابلیت صفحه‌کلید الفبایی در منبع Configuration شیء به‌عنوان KEYBOARD_QWERTY گزارش شده است.

  • اگر دستگاه ورودی کلیدهایی داشته باشد که به KEYCODE_DPAD_UP، KEYCODE_DPAD_DOWN، KEYCODE_DPAD_LEFT، KEYCODE_DPAD_RIGHT، و KEYCODE_DPAD_CENTER (همه باید وجود داشته باشند) تخصیص داده شده باشند، آن دستگاه دارای صفحه‌کلید جهت‌دار درنظر گرفته می‌شود. قابلیت صفحه‌کلید جهتی در منبع Configuration شیء به‌عنوان NAVIGATION_DPAD گزارش شده است.

  • اگر دستگاه ورودی کلیدهایی داشته باشد که به KEYCODE_BUTTON_A یا دیگر کلیدهای مربوط به پد بازی تخصیص داده شده باشند، آن دستگاه دارای پد بازی درنظر گرفته می‌شود.

شرایط لازم درایور صفحه‌کلید

  1. گردانندگان صفحه‌کلید باید فقط کدهای کلید را برای کلیدهایی که واقعاً پشتیبانی می‌کنند ثبت کنند. ثبت کدهای کلید اضافی ممکن است الگوریتم طبقه‌بندی دستگاه را گیج کند یا باعث شود سیستم قابلیت‌های صفحه‌کلید پشتیبانی‌شده دستگاه را به‌اشتباه تشخیص دهد.

  2. گردانندگان صفحه‌کلید باید از EV_KEY برای گزارش فشار دادن کلیدها استفاده کنند، بااستفاده از مقدار 0 برای نشان دادن اینکه کلیدی رها شده است، مقدار 1 برای نشان دادن اینکه کلیدی فشار داده شده است، و مقداری بزرگ‌تر یا مساوی با 2 برای نشان دادن اینکه کلید به‌طور خودکار تکرار می‌شود.

  3. ‫Android تکرار صفحه‌کلید را خودش انجام می‌دهد. عملکرد تکرار خودکار باید در درایور غیرفعال شود.

  4. گردانندگان صفحه‌کلید می‌توانند به‌صورت اختیاری با ارسال EV_MSC با MSC_SCANCODE و مقداری که نشان‌دهنده کاربرد یا کد اسکن است، کاربرد HID یا کد اسکن سطح پایین را هنگام فشار دادن کلید نشان دهند. درحال‌حاضر Android از این اطلاعات استفاده نمی‌کند.

  5. گردانندگان صفحه‌کلید باید از تنظیم وضعیت‌های LED هنگام نوشتن EV_LED در دستگاه پشتیبانی کنند. گرداننده hid-input این کار را به‌طور خودکار انجام می‌دهد. در زمان نوشتن این مطلب، Android از LED_CAPSLOCK، LED_SCROLLLOCK، و LED_NUMLOCK استفاده می‌کند. این LEDها فقط زمانی باید پشتیبانی شوند که صفحه‌کلید واقعاً چراغ‌های نشانگر مربوطه را داشته باشد.

  6. گردانندگان صفحه‌کلید برای صفحه‌کلیدهای جاسازی‌شده (برای مثال، استفاده از ماتریس GPIO) باید مطمئن شوند که رویدادهای EV_KEY با مقدار 0 برای کلیدهایی که هنگام رفتن دستگاه به حالت خواب هنوز فشرده هستند ارسال کنند. درغیراین‌صورت ممکن است کلیدها گیر کنند و برای همیشه به‌طور خودکار تکرار شوند.

عملکرد صفحه‌کلید

در زیر خلاصه کوتاهی از عملکرد صفحه‌کلید در Android آمده است.

  1. EventHub رویدادهای خام را از درایور evdev می‌خواند و کدهای کلید Linux (که گاهی به‌عنوان کدهای اسکن شناخته می‌شوند) را بااستفاده از نقشه چیدمان کلید صفحه‌کلید به کدهای کلید Android نگاشت می‌کند.

  2. ‫InputReader رویدادهای خام را مصرف می‌کند و وضعیت کلید متا را به‌روز می‌کند. برای مثال، اگر کلید تبدیل چپ فشار داده شود یا رها شود، خواننده بیت‌های META_SHIFT_LEFT_ON و META_SHIFT_ON را براساس آن تنظیم یا بازنشانی می‌کند.

  3. ‫InputReader درباره رویداد کلیدی به InputDispatcher اطلاع می‌دهد.

  4. InputDispatcher با فراخواندن WindowManagerPolicy.interceptKeyBeforeQueueing از WindowManagerPolicy می‌پرسد که با رویداد کلیدی چه کار کند. این روش بخشی از مسیر حیاتی است که مسئول بیدار کردن دستگاه هنگام فشار دادن کلیدهای خاص است. ‫EventHub به‌طور مؤثر قفل بیداری را در این مسیر حیاتی نگه می‌دارد تا مطمئن شود که تا انتها اجرا خواهد شد.

  5. اگر InputFilter درحال‌حاضر درحال استفاده باشد، InputDispatcher به آن فرصت می‌دهد تا کلید را مصرف یا تبدیل کند. از InputFilter می‌توان برای پیاده‌سازی خط‌مشی‌های دسترس‌پذیری سطح پایین در کل سیستم استفاده کرد.

  6. ‫InputDispatcher کلید را برای پردازش در رشته توزیع در صف قرار می‌دهد.

  7. وقتی InputDispatcher کلید را از صف خارج می‌کند، به WindowManagerPolicy فرصت دیگری می‌دهد تا رویداد کلید را با فراخوانی WindowManagerPolicy.interceptKeyBeforeDispatching رهگیری کند. این روش میان‌برهای سیستم و عملکردهای دیگر را مدیریت می‌کند.

  8. سپس InputDispatcher هدف رویداد کلیدی (پنجره کانونی) را شناسایی می‌کند و منتظر می‌ماند تا آماده شود. سپس، InputDispatcher رویداد کلیدی را به برنامه ارسال می‌کند.

  9. درون برنامه، رویداد کلیدی در سلسله‌مراتب نما به نمای کانونی برای توزیع کلید پیش‌از IME منتشر می‌شود.

  10. اگر رویداد کلیدی در توزیع پیش‌از IME مدیریت نشود و از IME استفاده شود، رویداد کلیدی به IME تحویل داده می‌شود.

  11. اگر رویداد کلیدی توسط IME مصرف نشده باشد، رویداد کلیدی در سلسله‌مراتب نما به نمای کانونی برای توزیع کلید استاندارد منتشر می‌شود.

  12. برنامه به InputDispatcher گزارش می‌دهد که آیا رویداد کلیدی مصرف شده است یا نه. اگر رویداد مصرف نشده باشد، InputDispatcher WindowManagerPolicy.dispatchUnhandledKey را فرا می‌خواند تا رفتار «بازگشت» را اعمال کند. بسته به کنش برگشتی، چرخه توزیع رویداد کلیدی ممکن است بااستفاده از کد کلید دیگری بازراه‌اندازی شود. برای مثال، اگر برنامه‌ای KEYCODE_ESCAPE را مدیریت نکند، سیستم ممکن است رویداد کلیدی را به‌جای آن به‌عنوان KEYCODE_BACK دوباره ارسال کند.

پیکربندی صفحه‌کلید

رفتار صفحه‌کلید براساس چیدمان کلید صفحه‌کلید، نقشه نویسه کلید، و پیکربندی دستگاه ورودی تعیین می‌شود.

برای جزئیات بیشتر درباره فایل‌هایی که در پیکربندی صفحه‌کلید شرکت می‌کنند، به بخش‌های زیر مراجعه کنید:

مشخصات

از ویژگی‌های پیکربندی دستگاه ورودی زیر برای صفحه‌کلیدها استفاده می‌شود.

keyboard.layout

تعریف: keyboard.layout = <name>

نام فایل چیدمان کلید مرتبط با دستگاه ورودی را مشخص می‌کند، به‌استثنای پسوند .kl. اگر این فایل پیدا نشود، سیستم ورودی به‌جای آن از طرح‌بندی کلید پیش‌فرض استفاده خواهد کرد.

فاصله‌ها در نام هنگام جستجو به خط زیر تبدیل می‌شوند.

برای جزئیات بیشتر به سند فایل چیدمان کلید مراجعه کنید.

keyboard.characterMap

تعریف: keyboard.characterMap = <name>

نام فایل نگاشت نویسه کلید مرتبط با دستگاه ورودی را مشخص می‌کند، به‌استثنای افزونه .kcm. اگر این فایل پیدا نشود، سیستم ورودی به‌جای آن از نگاشت نویسه کلید پیش‌فرض استفاده خواهد کرد.

فاصله‌ها در نام هنگام جستجو به خط زیر تبدیل می‌شوند.

برای جزئیات بیشتر به سند فایل نگاشت نویسه کلید مراجعه کنید.

keyboard.orientationAware

تعریف: keyboard.orientationAware = 0 | 1

مشخص می‌کند که آیا صفحه‌کلید باید به تغییرات جهت نمایشگر واکنش نشان دهد یا نه.

  • اگر مقدار 1 باشد، کلیدهای صفحه‌کلید جهتی وقتی جهت نمایشگر مرتبط تغییر می‌کند می‌چرخند.

  • اگر مقدار 0 باشد، صفحه‌کلید دربرابر تغییرات جهت نمایش مصون است.

مقدار پیش‌فرض 0 است.

از آگاهی از جهت برای پشتیبانی از چرخش کلیدهای صفحه‌کلید جهت‌دار، مثل Motorola Droid، استفاده می‌شود. برای مثال، وقتی دستگاه ۹۰ درجه در جهت عقربه‌های ساعت از جهت طبیعی‌اش چرخانده می‌شود، KEYCODE_DPAD_UP به KEYCODE_DPAD_RIGHT دوباره‌نگاشت می‌شود زیرا وقتی دستگاه در آن جهت نگه داشته می‌شود، کلید «بالا» درنهایت به «راست» اشاره می‌کند.

keyboard.builtIn

تعریف: keyboard.builtIn = 0 | 1

مشخص می‌کند که آیا صفحه‌کلید داخلی (متصل فیزیکی) است یا نه.

اگر نام دستگاه به -keypad ختم شود، مقدار پیش‌فرض 1 است، درغیراین‌صورت 0 است.

شناسه دستگاه صفحه‌کلید توکار همیشه 0 است. صفحه‌کلیدهای دیگری که داخلی نیستند شناسه‌های دستگاه غیرصفر یکتا دریافت می‌کنند.

استفاده از شناسه 0 برای صفحه‌کلید داخلی برای حفظ سازگاری با فیلد KeyCharacterMap.BUILT_IN_KEYBOARD که شناسه صفحه‌کلید داخلی را مشخص می‌کند و مقدار 0 دارد، مهم است. این فیلد در API منسوخ شده است اما برنامه‌های قدیمی‌تر ممکن است همچنان از آن استفاده کنند.

صفحه‌کلید با عملکرد ویژه (صفحه‌کلیدی که نقشه نویسه کلید آن نوعی SPECIAL_FUNCTION را مشخص می‌کند) هرگز به‌عنوان صفحه‌کلید داخلی ثبت نخواهد شد، صرف‌نظر از تنظیم این دارایی. دلیل این است که صفحه‌کلید با عملکرد ویژه به‌تعریف برای استفاده در تایپ عمومی درنظر گرفته نشده است.

پیکربندی‌های نمونه

# This is an example input device configuration file for a built-in
# keyboard that has a DPad.

# The keyboard is internal because it is part of the device.
device.internal = 1

# The keyboard is the default built-in keyboard so it should be assigned
# an id of 0.
keyboard.builtIn = 1

# The keyboard includes a DPad which is mounted on the device.  As the device
# is rotated the orientation of the DPad rotates along with it, so the DPad must
# be aware of the display orientation.  This ensures that pressing 'up' on the
# DPad always means 'up' from the perspective of the user, even when the entire
# device has been rotated.
keyboard.orientationAware = 1

یادداشت‌های سازگاری

قبل‌از Honeycomb، نگاشت ورودی صفحه‌کلید از هیچ‌یک از دارایی‌های پیکربندی استفاده نمی‌کرد. فرض بر این بود که همه صفحه‌کلیدها به‌صورت فیزیکی متصل و از جهت آگاه هستند. چیدمان کلید پیش‌فرض و نقشه نویسه کلید به‌جای Generic، qwerty نام‌گذاری شد. قالب نقشه نویسه کلید نیز بسیار متفاوت بود و چارچوب از صفحه‌کلیدهای کامل به‌سبک رایانه یا صفحه‌کلیدهای خارجی پشتیبانی نمی‌کرد.

هنگام ارتقا دادن دستگاه‌ها به Honeycomb، حتماً فایل‌های پیکربندی و نقشه کلید لازم را ایجاد یا به‌روز کنید.

کاربردهای HID، کدهای کلید Linux، و کدهای کلید Android

سیستم بسته به لایه انتزاعی، بااستفاده از چندین شناسه مختلف به کلیدها ارجاع می‌دهد.

برای دستگاه‌های HID، هر کلید دارای کاربرد HID مرتبط است. گرداننده Linux hid-input و گرداننده‌های HID مربوط به فروشنده و دستگاه خاص مسئول تجزیه گزارش‌های HID و نگاشت کاربردهای HID به کدهای کلید Linux هستند.

وقتی Android رویدادهای EV_KEY را از هسته Linux می‌خواند، هر کد کلید Linux را براساس فایل چیدمان کلید دستگاه به کد کلید Android مربوطه ترجمه می‌کند.

وقتی رویداد کلیدی به برنامه‌ای ارسال می‌شود، نمونه android.view.KeyEvent کد کلید Linux را به‌عنوان مقدار getScanCode() و کد کلید Android را به‌عنوان مقدار getKeyCode() گزارش می‌کند. برای اهداف چارچوب، فقط مقدار getKeyCode() مهم است.

توجه داشته باشید که اطلاعات استفاده HID توسط خود Android استفاده نمی‌شود یا به برنامه‌ها منتقل نمی‌شود.

جدول‌های کد

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

ستون LKC کد کلید Linux را به‌صورت شانزده‌شانزدهی مشخص می‌کند.

ستون AKC کد کلید Android را به‌صورت شانزده‌شانزدهی مشخص می‌کند.

ستون «یادداشت‌ها» به یادداشت‌هایی اشاره دارد که پس‌از جدول پست می‌شوند.

ستون «نسخه» اولین نسخه پلاتفرم Android را مشخص می‌کند که این کلید را در نقشه کلید پیش‌فرض خود داشته است. در مواردی که نقشه‌کلید پیش‌فرض بین نسخه‌ها تغییر کرده باشد، چندین ردیف نشان داده می‌شود. قدیمی‌ترین نسخه نشان‌داده‌شده ۱.۶ است.

  • در Gingerbread (2.3) و نسخه‌های قدیمی‌تر، تخصیص کلید پیش‌فرض qwerty.kl بود. این نقشه کلید فقط برای استفاده با شبیه‌ساز Android درنظر گرفته شده بود و برای پشتیبانی از صفحه‌کلیدهای خارجی دلخواه درنظر گرفته نشده بود. بااین‌حال، چند سازنده تجهیزات اصلی پشتیبانی از صفحه‌کلید بلوتوث را به پلاتفرم اضافه کردند و برای ارائه نگاشت‌های صفحه‌کلید لازم به qwerty.kl متکی بودند. درنتیجه این نقشه‌های قدیمی‌تر ممکن است برای سازندگان تجهیزات اصلی که لوازم جانبی برای این دستگاه‌های خاص می‌سازند جالب باشد. توجه داشته باشید که این نگاشت‌ها با نگاشت‌های کنونی تفاوت اساسی دارند، به‌ویژه درخصوص نحوه برخورد با کلید HOME. توصیه می‌شود همه لوازم جانبی جدید براساس Honeycomb یا نقشه‌های کلید جدیدتر (یعنی HID استاندارد) توسعه داده شوند.

  • از Honeycomb (۳.۰)، نقشه کلید پیش‌فرض Generic.kl است. این نقشه کلید برای پشتیبانی از صفحه‌کلیدهای کامل به‌سبک رایانه طراحی شده است. اکثر عملکردهای صفحه‌کلیدهای استاندارد HID باید بدون نیاز به تنظیمات اضافی کار کنند.

نگاشت کد کلید ممکن است در نسخه‌های مختلف هسته Linux و Android متفاوت باشد. وقتی مشخص شود که تغییراتی در نقشه‌های کلید پیش‌فرض Android رخ داده است، این تغییرات در ستون نسخه نشان داده می‌شود.

ممکن است درایورهای HID مختص دستگاه و نقشه‌های کلید، نگاشت‌های متفاوتی نسبت‌به آنچه در اینجا نشان داده شده است اعمال کنند.

صفحه صفحه‌کلید و صفحه کلیدک HID‏ (0x07)

استفاده از دستگاه میانای انسانی نام استفاده از دستگاه میانای انسانی LKC نام کد کلید Linux نسخه AKC نام کد کلید Android یادداشت‌ها
0x07 0x0001 انتقال خطای صفحه‌کلید
0x07 0x0002 POST صفحه‌کلید ناموفق بود
0x07 0x0003 خطای صفحه‌کلید تعریف‌نشده
0x07 0x0004 صفحه‌کلید a و A 0x001e KEY_A ۱.۶ 0x001d KEYCODE_A 1
0x07 0x0005 صفحه‌کلید b و B 0x0030 KEY_B ۱٫۶ 0x001e KEYCODE_B 1
0x07 0x0006 صفحه‌کلید c و C 0x002e KEY_C ۱٫۶ 0x001f KEYCODE_C 1
0x07 0x0007 صفحه‌کلید d و D 0x0020 KEY_D ۱٫۶ 0x0020 KEYCODE_D 1
0x07 0x0008 صفحه‌کلید e و E 0x0012 KEY_E ۱.۶ 0x0021 KEYCODE_E 1
0x07 0x0009 صفحه‌کلید f و F ‫0x0021 KEY_F ۱.۶ 0x0022 KEYCODE_F 1
0x07 0x000a صفحه‌کلید g و G 0x0022 KEY_G ۱.۶ 0x0023 KEYCODE_G 1
0x07 0x000b صفحه‌کلید h و H ‫0x0023 KEY_H ۱.۶ ‫0x0024 KEYCODE_H 1
‫0x07 0x000c صفحه‌کلید i و I 0x0017 KEY_I ۱٫۶ 0x0025 KEYCODE_I 1
‫0x07 0x000d صفحه‌کلید j و J ‫0x0024 KEY_J ۱.۶ 0x0026 KEYCODE_J 1
0x07 0x000e کلیدهای k و K صفحه‌کلید 0x0025 KEY_K ۱.۶ ‫0x0027 KEYCODE_K 1
0x07 0x000f صفحه‌کلید l و L 0x0026 KEY_L ۱.۶ 0x0028 KEYCODE_L 1
0x07 0x0010 صفحه‌کلید m و M 0x0032 KEY_M ۱.۶ 0x0029 KEYCODE_M 1
0x07 0x0011 صفحه‌کلید n و N 0x0031 KEY_N ۱.۶ 0x002a KEYCODE_N 1
0x07 0x0012 کلیدهای صفحه‌کلید o و O 0x0018 KEY_O ۱.۶ 0x002b KEYCODE_O 1
‫0x07 0x0013 کلیدهای صفحه‌کلید p و P 0x0019 KEY_P ۱.۶ ‫0x002c KEYCODE_P 1
0x07 0x0014 صفحه‌کلید q و Q 0x0010 کلید Q ۱.۶ 0x002d KEYCODE_Q 1
0x07 0x0015 صفحه‌کلید r و R 0x0013 KEY_R ۱٫۶ 0x002e KEYCODE_R 1
‫0x07 0x0016 صفحه‌کلید s و S 0x001f KEY_S ۱.۶ ‫0x002f KEYCODE_S 1
0x07 0x0017 صفحه‌کلید t و T ‫0x0014 KEY_T ۱٫۶ 0x0030 KEYCODE_T 1
0x07 0x0018 صفحه‌کلید u و U 0x0016 KEY_U ۱٫۶ 0x0031 KEYCODE_U 1
0x07 0x0019 صفحه‌کلید v و V 0x002f KEY_V ۱٫۶ 0x0032 KEYCODE_V 1
0x07 0x001a صفحه‌کلید w و W 0x0011 KEY_W ۱.۶ 0x0033 KEYCODE_W 1
0x07 0x001b صفحه‌کلید x و X 0x002d KEY_X ۱٫۶ 0x0034 KEYCODE_X 1
0x07 0x001c صفحه‌کلید y و Y 0x0015 KEY_Y ۱.۶ 0x0035 KEYCODE_Y 1
0x07 0x001d صفحه‌کلید z و Z ‫0x002c KEY_Z ۱.۶ 0x0036 KEYCODE_Z 1
‫0x07 0x001e صفحه‌کلید ۱ و ! 0x0002 KEY_1 ۱.۶ 0x0008 KEYCODE_1 1
0x07 0x001f صفحه‌کلید ۲ و @ 0x0003 KEY_2 ۱.۶ 0x0009 کدکلید_۲ 1
0x07 0x0020 صفحه‌کلید ۳ و # 0x0004 KEY_3 ۱.۶ 0x000a KEYCODE_3 1
0x07 0x0021 صفحه‌کلید ۴ و $ 0x0005 KEY_4 ۱.۶ ‫0x000b KEYCODE_4 1
0x07 0x0022 صفحه‌کلید 5 و % 0x0006 کلید ۵ ۱.۶ 0x000c KEYCODE_5 1
0x07 0x0023 صفحه‌کلید ۶ و ^ ‫0x0007 KEY_6 ۱٫۶ 0x000d KEYCODE_6 1
‫0x07 0x0024 صفحه‌کلید ۷ و & 0x0008 KEY_7 ۱.۶ 0x000e KEYCODE_7 1
0x07 0x0025 صفحه‌کلید ۸ و * 0x0009 KEY_8 ۱.۶ 0x000f KEYCODE_8 1
0x07 0x0026 صفحه‌کلید ۹ و ( 0x000a KEY_9 ۱.۶ 0x0010 KEYCODE_9 1
0x07 0x0027 صفحه‌کلید ۰ و ) ‫0x000b KEY_0 ۱.۶ 0x0007 KEYCODE_0 1
0x07 0x0028 کلید «برگشتن» صفحه‌کلید (ENTER) 0x001c کلید Enter ۱.۶ 0x0042 KEYCODE_ENTER 1
0x07 0x0029 صفحه‌کلید ESCAPE 0x0001 KEY_ESC ۳٫۰ 0x006f KEYCODE_ESCAPE
"" "" "" "" ‫۳-۲ 0x0004 KEYCODE_BACK
‫0x07 0x002a حذف صفحه‌کلید (پس‌بر) 0x000e کلید_حذف ۱.۶ 0x0043 KEYCODE_DEL
0x07 0x002b برگه صفحه‌کلید 0x000f کلید جهش ۱.۶ 0x003d KEYCODE_TAB
0x07 0x002c کلید فاصله صفحه‌کلید 0x0039 کلید فاصله ۱.۶ 0x003e KEYCODE_SPACE
0x07 0x002d صفحه‌کلید - و _ 0x000c KEY_MINUS ۱٫۶ 0x0045 KEYCODE_MINUS 1
‫0x07 0x002e صفحه‌کلید = و + ‫0x000d KEY_EQUAL ۱.۶ ‫0x0046 KEYCODE_EQUALS 1
0x07 0x002f صفحه‌کلید [ و { 0x001a KEY_LEFTBRACE ۱.۶ 0x0047 KEYCODE_LEFT_BRACKET 1
0x07 0x0030 صفحه‌کلید ] و } 0x001b KEY_RIGHTBRACE ۱.۶ 0x0048 KEYCODE_RIGHT_BRACKET 1
0x07 0x0031 صفحه‌کلید \ و | ‫0x002b KEY_BACKSLASH ۱٫۶ 0x0049 KEYCODE_BACKSLASH 1
0x07 0x0032 صفحه‌کلید غیرامریکایی # و ~ ‫0x002b KEY_BACKSLASH ۱٫۶ 0x0049 KEYCODE_BACKSLASH 1
‫0x07 0x0033 صفحه‌کلید ؛ و : ‫0x0027 KEY_SEMICOLON ۱.۶ 0x004a KEYCODE_SEMICOLON 1
0x07 0x0034 صفحه‌کلید « و » 0x0028 KEY_APOSTROPHE ۱.۶ 0x004b KEYCODE_APOSTROPHE 1
0x07 0x0035 صفحه‌کلید ` و ~ 0x0029 KEY_GRAVE ۳٫۰ ‫0x0044 KEYCODE_GRAVE 1
‫0x07 0x0036 صفحه‌کلید، و < 0x0033 KEY_COMMA ۱.۶ 0x0037 KEYCODE_COMMA 1
0x07 0x0037 صفحه‌کلید . و > 0x0034 نقطه ۱٫۶ 0x0038 KEYCODE_PERIOD 1
0x07 0x0038 صفحه‌کلید / و ؟ 0x0035 KEY_SLASH ۱.۶ 0x004c KEYCODE_SLASH 1
‫0x07 0x0039 قفل تبدیل صفحه‌کلید 0x003a KEY_CAPSLOCK ۳٫۰ 0x0073 KEYCODE_CAPS_LOCK
0x07 0x003a صفحه‌کلید F1 0x003b KEY_F1 ۳٫۰ 0x0083 KEYCODE_F1
"" "" "" "" ۱٫۶ 0x0052 KEYCODE_MENU
0x07 0x003b صفحه‌کلید F2 0x003c KEY_F2 ۳٫۰ 0x0084 KEYCODE_F2
"" "" "" "" ۱.۶ 0x0002 KEYCODE_SOFT_RIGHT
0x07 0x003c صفحه‌کلید F3 0x003d KEY_F3 ۳٫۰ 0x0085 KEYCODE_F3
"" "" "" "" ۱.۶ 0x0005 KEYCODE_CALL
0x07 0x003d صفحه‌کلید F4 0x003e KEY_F4 ۳٫۰ 0x0086 KEYCODE_F4
"" "" "" "" ۱.۶ 0x0006 KEYCODE_ENDCALL
0x07 0x003e صفحه‌کلید F5 0x003f KEY_F5 ۳٫۰ 0x0087 KEYCODE_F5
‫0x07 0x003f صفحه‌کلید F6 0x0040 KEY_F6 ۳٫۰ 0x0088 KEYCODE_F6
0x07 0x0040 صفحه‌کلید F7 0x0041 KEY_F7 ۳٫۰ 0x0089 KEYCODE_F7
0x07 0x0041 صفحه‌کلید F8 ‫0x0042 KEY_F8 ۳٫۰ 0x008a KEYCODE_F8
0x07 0x0042 صفحه‌کلید F9 0x0043 KEY_F9 ۳٫۰ ‫0x008b KEYCODE_F9
‫0x07 0x0043 صفحه‌کلید F10 0x0044 KEY_F10 ۳٫۰ 0x008c KEYCODE_F10
"" "" "" "" ‫۳-۲ 0x0052 KEYCODE_MENU
0x07 0x0044 صفحه‌کلید F11 0x0057 KEY_F11 ۳٫۰ 0x008d KEYCODE_F11
‫0x07 0x0045 صفحه‌کلید F12 0x0058 KEY_F12 ۳٫۰ 0x008e KEYCODE_F12
0x07 0x0046 چاپ صفحه صفحه‌کلید 0x0063 KEY_SYSRQ ۳٫۰ 0x0078 KEYCODE_SYSRQ
‫0x07 0x0047 قفل پیمایش صفحه‌کلید ‫0x0046 KEY_SCROLLLOCK ۳٫۰ 0x0074 KEYCODE_SCROLL_LOCK
0x07 0x0048 مکث صفحه‌کلید 0x0077 کلید_مکث ۳٫۰ 0x0079 KEYCODE_BREAK
‫0x07 0x0049 درج صفحه‌کلید 0x006e KEY_INSERT ۳٫۰ 0x007c KEYCODE_INSERT
0x07 0x004a صفحه اصلی صفحه‌کلید 0x0066 کلید_خانه ۳٫۰ 0x007a KEYCODE_MOVE_HOME
"" "" "" "" ۱.۶ 0x0003 KEYCODE_HOME
0x07 0x004b کلید «صفحه بالا» در صفحه‌کلید 0x0068 KEY_PAGEUP ۳٫۰ 0x005c KEYCODE_PAGE_UP
0x07 0x004c حذف کردن صفحه‌کلید به جلو 0x006f KEY_DELETE ۳٫۰ 0x0070 KEYCODE_FORWARD_DEL
‫0x07 0x004d پایان صفحه‌کلید 0x006b KEY_END ۳٫۰ 0x007b KEYCODE_MOVE_END
"" "" "" "" ۱.۶ 0x0006 KEYCODE_ENDCALL
0x07 0x004e کلید Page Down صفحه‌کلید 0x006d KEY_PAGEDOWN ۳٫۰ 0x005d KEYCODE_PAGE_DOWN
0x07 0x004f کلید راست‌بَر صفحه‌کلید 0x006a کلید_راست ۱.۶ 0x0016 KEYCODE_DPAD_RIGHT
‫0x07 0x0050 کلید چپ‌بَر صفحه‌کلید 0x0069 KEY_LEFT ۱.۶ 0x0015 KEYCODE_DPAD_LEFT
0x07 0x0051 کلید پایین‌بر صفحه‌کلید 0x006c KEY_DOWN ۱.۶ 0x0014 KEYCODE_DPAD_DOWN
0x07 0x0052 کلید بالابر صفحه‌کلید 0x0067 کلید بالا ۱.۶ 0x0013 KEYCODE_DPAD_UP
0x07 0x0053 «قفل عددی» و «پاک کردن» صفحه‌کلید 0x0045 KEY_NUMLOCK ۳٫۰ ‫0x008f KEYCODE_NUM_LOCK
0x07 0x0054 صفحه‌کلید / 0x0062 KEY_KPSLASH ۳٫۰ 0x009a KEYCODE_NUMPAD_DIVIDE
0x07 0x0055 صفحه‌کلید * 0x0037 KEY_KPASTERISK ۳٫۰ 0x009b KEYCODE_NUMPAD_MULTIPLY
0x07 0x0056 صفحه‌کلید - 0x004a KEY_KPMINUS ۳٫۰ 0x009c KEYCODE_NUMPAD_SUBTRACT
‫0x07 0x0057 صفحه‌کلید + 0x004e KEY_KPPLUS ۳٫۰ 0x009d KEYCODE_NUMPAD_ADD
‫0x07 0x0058 صفحه‌کلید «ورود» 0x0060 KEY_KPENTER ۳٫۰ 0x00a0 KEYCODE_NUMPAD_ENTER
0x07 0x0059 صفحه‌کلید ۱ و پایان 0x004f KEY_KP1 ۳٫۰ 0x0091 KEYCODE_NUMPAD_1
0x07 0x005a صفحه‌کلید ۲ و کلید پایین‌بر 0x0050 KEY_KP2 ۳٫۰ 0x0092 KEYCODE_NUMPAD_2
0x07 0x005b صفحه‌کلید ۳ و PageDn 0x0051 KEY_KP3 ۳٫۰ 0x0093 KEYCODE_NUMPAD_3
0x07 0x005c صفحه‌کلید ۴ و کلید چپ‌بَر 0x004b KEY_KP4 ۳٫۰ 0x0094 KEYCODE_NUMPAD_4
‫0x07 0x005d صفحه‌کلید ۵ 0x004c KEY_KP5 ۳٫۰ 0x0095 KEYCODE_NUMPAD_5
0x07 0x005e کلیدهای ۶ صفحه‌کلید و راست‌بَر 0x004d KEY_KP6 ۳٫۰ ‫0x0096 KEYCODE_NUMPAD_6
0x07 0x005f صفحه‌کلید ۷ و Home 0x0047 KEY_KP7 ۳٫۰ 0x0097 KEYCODE_NUMPAD_7
0x07 0x0060 صفحه‌کلید ۸ و کلید بالابر 0x0048 KEY_KP8 ۳٫۰ 0x0098 KEYCODE_NUMPAD_8
0x07 0x0061 صفحه‌کلید 9 و صفحه بالا ‫0x0049 KEY_KP9 ۳٫۰ ‫0x0099 KEYCODE_NUMPAD_9
0x07 0x0062 صفحه‌کلید ۰ و درج کردن 0x0052 KEY_KP0 ۳٫۰ 0x0090 KEYCODE_NUMPAD_0
0x07 0x0063 صفحه‌کلید . و حذف 0x0053 KEY_KPDOT ۳٫۰ 0x009e KEYCODE_NUMPAD_DOT
0x07 0x0064 صفحه‌کلید غیرامریکایی \ و | 0x0056 KEY_102ND ‫۴.۰ ‫0x0049 KEYCODE_BACKSLASH 1
0x07 0x0065 برنامه صفحه‌کلید 0x007f KEY_COMPOSE ۳٫۰ 0x0052 KEYCODE_MENU
"" "" "" "" ۱.۶ 0x0054 KEYCODE_SEARCH
0x07 0x0066 روشن/خاموش کردن صفحه‌کلید 0x0074 KEY_POWER ۱.۶ 0x001a KEYCODE_POWER
0x07 0x0067 صفحه‌کلید = 0x0075 KEY_KPEQUAL ۳٫۰ 0x00a1 KEYCODE_NUMPAD_EQUALS
0x07 0x0068 صفحه‌کلید F13 0x00b7 KEY_F13
0x07 0x0069 صفحه‌کلید F14 0x00b8 KEY_F14
0x07 0x006a صفحه‌کلید F15 0x00b9 F15
0x07 0x006b صفحه‌کلید F16 0x00ba KEY_F16
0x07 0x006c صفحه‌کلید F17 0x00bb KEY_F17
0x07 0x006d صفحه‌کلید F18 0x00bc KEY_F18
0x07 0x006e صفحه‌کلید F19 0x00bd KEY_F19
‫0x07 0x006f صفحه‌کلید F20 0x00be KEY_F20
0x07 0x0070 صفحه‌کلید F21 0x00bf KEY_F21
0x07 0x0071 صفحه‌کلید F22 0x00c0 KEY_F22
‫0x07 0x0072 صفحه‌کلید F23 0x00c1 KEY_F23
0x07 0x0073 صفحه‌کلید F24 0x00c2 KEY_F24
0x07 0x0074 اجرای صفحه‌کلید 0x0086 KEY_OPEN
0x07 0x0075 راهنمای صفحه‌کلید 0x008a KEY_HELP
0x07 0x0076 منو صفحه‌کلید 0x0082 KEY_PROPS
0x07 0x0077 انتخاب صفحه‌کلید 0x0084 KEY_FRONT
‫0x07 0x0078 توقف صفحه‌کلید 0x0080 KEY_STOP ۳٫۰ 0x0056 KEYCODE_MEDIA_STOP
0x07 0x0079 دوباره صفحه‌کلید ‫0x0081 KEY_AGAIN
0x07 0x007a واگرد کردن صفحه‌کلید 0x0083 KEY_UNDO
0x07 0x007b برش صفحه‌کلید 0x0089 KEY_CUT
0x07 0x007c کپی کردن صفحه‌کلید 0x0085 کلید_کپی
‫0x07 0x007d جای‌گذاری صفحه‌کلید 0x0087 کلید_جای‌گذاری
0x07 0x007e پیدا کردن با صفحه‌کلید 0x0088 KEY_FIND
‫0x07 0x007f صامت کردن صفحه‌کلید 0x0071 KEY_MUTE ۳٫۰ 0x00a4 KEYCODE_VOLUME_MUTE
0x07 0x0080 افزایش صدای صفحه‌کلید 0x0073 KEY_VOLUMEUP ۱.۶ 0x0018 KEYCODE_VOLUME_UP
0x07 0x0081 کاهش صدای صفحه‌کلید 0x0072 KEY_VOLUMEDOWN ۱٫۶ 0x0019 KEYCODE_VOLUME_DOWN
0x07 0x0082 قفل کردن صفحه‌کلید قفل تبدیل
0x07 0x0083 قفل کردن Num Lock صفحه‌کلید
0x07 0x0084 قفل کردن صفحه‌کلید قفل پیمایش
0x07 0x0085 ویرگول صفحه‌کلید 0x0079 KEY_KPCOMMA ۳٫۰ 0x009f KEYCODE_NUMPAD_COMMA
0x07 0x0086 علامت مساوی صفحه‌کلید
0x07 0x0087 Keyboard International1 0x0059 KEY_RO
0x07 0x0088 صفحه‌کلید بین‌المللی ۲ 0x005d KEY_KATAKANAHIRAGANA
0x07 0x0089 صفحه‌کلید بین‌المللی۳ 0x007c KEY_YEN
0x07 0x008a صفحه‌کلید بین‌المللی ۴ 0x005c KEY_HENKAN
0x07 0x008b Keyboard International5 0x005e KEY_MUHENKAN
‫0x07 0x008c Keyboard International6 0x005f KEY_KPJPCOMMA
0x07 0x008d صفحه‌کلید بین‌المللی ۷
0x07 0x008e صفحه‌کلید بین‌المللی ۸
‫0x07 0x008f Keyboard International9
0x07 0x0090 صفحه‌کلید LANG1 0x007a KEY_HANGEUL
0x07 0x0091 صفحه‌کلید LANG2 0x007b KEY_HANJA
0x07 0x0092 صفحه‌کلید LANG3 0x005a کلید کاتاکانا
0x07 0x0093 صفحه‌کلید LANG4 0x005b KEY_HIRAGANA
0x07 0x0094 صفحه‌کلید LANG5 0x0055 KEY_ZENKAKUHANKAKU
0x07 0x0095 صفحه‌کلید LANG6
0x07 0x0096 صفحه‌کلید LANG7
0x07 0x0097 صفحه‌کلید LANG8
0x07 0x0098 صفحه‌کلید LANG9
0x07 0x0099 پاک کردن با صفحه‌کلید جایگزین
0x07 0x009a SysReq/Attention صفحه‌کلید
0x07 0x009b لغو صفحه‌کلید
0x07 0x009c پاک کردن صفحه‌کلید
0x07 0x009d اولویت صفحه‌کلید
0x07 0x009e برگشتن صفحه‌کلید
‫0x07 0x009f جداساز صفحه‌کلید
0x07 0x00a0 خارج کردن صفحه‌کلید
0x07 0x00a1 Keyboard Oper
0x07 0x00a2 پاک کردن/تکرار صفحه‌کلید
0x07 0x00a3 صفحه‌کلید CrSel/Props
0x07 0x00a4 صفحه‌کلید ExSel
‫0x07 0x00b0 صفحه‌کلید ۰۰
0x07 0x00b1 صفحه‌کلید ۰۰۰
0x07 0x00b2 جداکننده هزارگان
0x07 0x00b3 جداکننده اعشاری
0x07 0x00b4 واحد ارز
0x07 0x00b5 واحد فرعی ارز
‫0x07 0x00b6 صفحه‌کلید ( 0x00b3 KEY_KPLEFTPAREN ۳٫۰ 0x00a2 KEYCODE_NUMPAD_LEFT_PAREN
0x07 0x00b7 صفحه‌کلید ) 0x00b4 KEY_KPRIGHTPAREN ۳٫۰ 0x00a3 KEYCODE_NUMPAD_RIGHT_PAREN
0x07 0x00b8 صفحه‌کلید {
0x07 0x00b9 صفحه‌کلید }
‫0x07 0x00ba برگه صفحه‌کلید
0x07 0x00bb پس‌بر صفحه‌کلید
0x07 0x00bc صفحه‌کلید الف
‫0x07 0x00bd صفحه‌کلید ب
0x07 0x00be صفحه‌کلید پ
0x07 0x00bf صفحه‌کلید D
0x07 0x00c0 صفحه‌کلید E
0x07 0x00c1 صفحه‌کلید F
0x07 0x00c2 صفحه‌کلید XOR
‫0x07 0x00c3 صفحه‌کلید ^
0x07 0x00c4 صفحه‌کلید %
0x07 0x00c5 صفحه‌کلید <
0x07 0x00c6 صفحه‌کلید >
‫0x07 0x00c7 صفحه‌کلید و
0x07 0x00c8 صفحه‌کلید &&
0x07 0x00c9 صفحه‌کلید |
0x07 0x00ca صفحه‌کلید ||
0x07 0x00cb صفحه‌کلید :
0x07 0x00cc صفحه‌کلید #
0x07 0x00cd فضای صفحه‌کلید
0x07 0x00ce صفحه‌کلید @
0x07 0x00cf صفحه‌کلید !
0x07 0x00d0 Keypad Memory Store
0x07 0x00d1 برگرداندن حافظه صفحه‌کلید
0x07 0x00d2 پاک کردن حافظه صفحه‌کلید
0x07 0x00d3 افزودن حافظه صفحه‌کلید
0x07 0x00d4 تفریق حافظه صفحه‌کلید
0x07 0x00d5 ضرب حافظه صفحه‌کلید
0x07 0x00d6 تقسیم حافظه صفحه‌کلید
0x07 0x00d7 صفحه‌کلید +/-
0x07 0x00d8 پاک کردن صفحه‌کلید
0x07 0x00d9 پاک کردن ورودی صفحه‌کلید
0x07 0x00da دودویی صفحه‌کلید
0x07 0x00db صفحه‌کلید هشت‌تایی
0x07 0x00dc اعشاری صفحه‌کلید
0x07 0x00dd صفحه‌کلید شانزده‌شانزدهی
0x07 0x00e0 کنترل چپ صفحه‌کلید 0x001d KEY_LEFTCTRL ۳٫۰ 0x0071 KEYCODE_CTRL_LEFT
‫0x07 0x00e1 کلید تبدیل چپ صفحه‌کلید 0x002a KEY_LEFTSHIFT ۱٫۶ 0x003b KEYCODE_SHIFT_LEFT
‫0x07 0x00e2 کلید دگرساز چپ صفحه‌کلید 0x0038 KEY_LEFTALT ۱.۶ 0x0039 KEYCODE_ALT_LEFT
0x07 0x00e3 واسط کاربر گرافیکی چپ صفحه‌کلید 0x007d KEY_LEFTMETA ۳٫۰ 0x0075 KEYCODE_META_LEFT
0x07 0x00e4 کلید کنترل راست صفحه‌کلید 0x0061 KEY_RIGHTCTRL ۳٫۰ 0x0072 KEYCODE_CTRL_RIGHT
0x07 0x00e5 کلید تبدیل راست صفحه‌کلید 0x0036 KEY_RIGHTSHIFT ۱٫۶ 0x003c KEYCODE_SHIFT_RIGHT
0x07 0x00e6 دگرساز راست صفحه‌کلید 0x0064 KEY_RIGHTALT ۱.۶ 0x003a KEYCODE_ALT_RIGHT
0x07 0x00e7 رابط کاربری گرافیکی راست صفحه‌کلید 0x007e KEY_RIGHTMETA ۳٫۰ 0x0076 KEYCODE_META_RIGHT
0x07 0x00e8 0x00a4 کلید_پخش/مکث ۳٫۰ 0x0055 KEYCODE_MEDIA_PLAY_PAUSE
0x07 0x00e9 0x00a6 KEY_STOPCD ۳٫۰ 0x0056 KEYCODE_MEDIA_STOP
‫0x07 0x00ea 0x00a5 KEY_PREVIOUSSONG ۳٫۰ 0x0058 KEYCODE_MEDIA_PREVIOUS
0x07 0x00eb 0x00a3 KEY_NEXTSONG ۳٫۰ 0x0057 KEYCODE_MEDIA_NEXT
0x07 0x00ec 0x00a1 KEY_EJECTCD ۳٫۰ ‫0x0081 KEYCODE_MEDIA_EJECT
0x07 0x00ed 0x0073 KEY_VOLUMEUP ۱.۶ 0x0018 KEYCODE_VOLUME_UP
0x07 0x00ee ‫0x0072 KEY_VOLUMEDOWN ۱٫۶ 0x0019 KEYCODE_VOLUME_DOWN
0x07 0x00ef 0x0071 KEY_MUTE ۳٫۰ 0x00a4 KEYCODE_VOLUME_MUTE
‫0x07 0x00f0 ‫0x0096 KEY_WWW ۱.۶ 0x0040 KEYCODE_EXPLORER
0x07 0x00f1 0x009e کلید_بازگشت ۱.۶ 0x0004 KEYCODE_BACK
0x07 0x00f2 0x009f KEY_FORWARD ۳٫۰ 0x007d KEYCODE_FORWARD
0x07 0x00f3 0x0080 KEY_STOP ۳٫۰ 0x0056 KEYCODE_MEDIA_STOP
0x07 0x00f4 0x0088 KEY_FIND
0x07 0x00f5 0x00b1 KEY_SCROLLUP ۳٫۰ 0x005c KEYCODE_PAGE_UP
‫0x07 0x00f6 ‫0x00b2 KEY_SCROLLDOWN ۳٫۰ 0x005d KEYCODE_PAGE_DOWN
0x07 0x00f7 ‫0x00b0 KEY_EDIT
0x07 0x00f8 0x008e KEY_SLEEP
0x07 0x00f9 0x0098 KEY_COFFEE ‫۴.۰ 0x001a KEYCODE_POWER
0x07 0x00fa 0x00ad KEY_REFRESH
0x07 0x00fb 0x008c KEY_CALC ‫۴.۰.۳ 0x00d2 KEYCODE_CALCULATOR

صفحه عمومی دستگاه میانای انسانی (0x01)

استفاده از دستگاه میانای انسانی نام استفاده از دستگاه میانای انسانی LKC نام کد کلید Linux نسخه AKC نام کد کلید Android یادداشت‌ها
0x01 0x0081 خاموش شدن سیستم 0x0074 KEY_POWER ۱.۶ 0x001a KEYCODE_POWER
‫0x01 0x0082 حالت خواب سیستم 0x008e KEY_SLEEP ۴٫۰ 0x001a KEYCODE_POWER
0x01 0x0083 بیدار شدن سیستم ‫0x008f KEY_WAKEUP ۴٫۰ 0x001a KEYCODE_POWER
0x01 0x0084 منو بافت سیستم
0x01 0x0085 منو اصلی سیستم
0x01 0x0086 منو برنامه سیستم
0x01 0x0087 راهنمای منو سیستم
0x01 0x0088 خروج از منو سیستم
0x01 0x0089 انتخاب منو سیستم
0x01 0x008a منو سیستم راست
0x01 0x008b منو سیستم سمت راست
0x01 0x008c منو سیستم بالا
‫0x01 0x008d منو سیستم پایین
0x01 0x008e بازراه‌اندازی سرد سیستم
‫0x01 0x008f بازراه‌اندازی گرم سیستم
0x01 0x00a0 پایه اتصال سیستم
0x01 0x00a1 جدا کردن سیستم
0x01 0x00a2 راه‌اندازی سیستم
0x01 0x00a3 جداساز سیستم
0x01 0x00a4 وقفه اشکال‌زدای سیستم
0x01 0x00a5 وقفه برنامه
0x01 0x00a6 وقفه اشکال‌زدای برنامه
0x01 0x00a7 صامت کردن بلندگوی سیستم
0x01 0x00a8 خواب موقت سیستم
0x01 0x00b0 معکوس کردن نمایشگر سیستم
0x01 0x00b1 نمایشگر سیستم داخلی
0x01 0x00b2 نمایشگر سیستم خارجی
0x01 0x00b3 نمایش سیستم هر دو
‫0x01 0x00b4 نمایشگر سیستم دوگانه
0x01 0x00b5 تغییر وضعیت نمایشگر سیستم داخلی/خارجی
0x01 0x00b6 جابه‌جایی نمایشگر سیستم اصلی/فرعی
0x01 0x00b7 مقیاس خودکار LCD نمایشگر سیستم

صفحه مصرف‌کننده HID‏ (0x0c)

استفاده از دستگاه میانای انسانی نام استفاده از دستگاه میانای انسانی LKC نام کد کلید Linux نسخه AKC نام کد کلید Android یادداشت‌ها
0x0c 0x0030 قدرت
0x0c 0x0031 بازنشانی
‫0x0c 0x0032 ویژه خواب
0x0c 0x0033 خواب بعداز
0x0c 0x0034 حالت خواب 0x008e KEY_SLEEP ۴٫۰ 0x001a KEYCODE_POWER
0x0c 0x0040 منو ‫0x008b KEY_MENU ۱٫۶ 0x0052 KEYCODE_MENU
0x0c 0x0041 انتخاب منو
0x0c 0x0042 منو بالا
0x0c 0x0043 منو پایین
0x0c 0x0044 منوِ سمت راست
0x0c 0x0045 منو راست 0x0181 کلید_راست
0x0c 0x0046 گریز از منو
0x0c 0x0047 افزایش مقدار منو
0x0c 0x0048 کاهش مقدار منو
0x0c 0x0067 کلید تغییر وضعیت «تصویردرتصویر» ‫0x00ab KEYCODE_WINDOW در aosp/1365553 اضافه شد
0x0c 0x0069 دکمه منو قرمز 0x18e KEY_RED 0x00b7 KEYCODE_PROG_RED در aosp/1388616 اضافه شد
0x0c 0x006a دکمه منو سبز 0x18f KEY_GREEN 0x00b8 KEYCODE_PROG_GREEN در aosp/1388616 اضافه شد
0x0c 0x006b دکمه منو آبی 0x191 KEY_BLUE 0x00ba KEYCODE_PROG_BLUE در aosp/1388616 اضافه شد
0x0c 0x006c دکمه منو زرد 0x190 KEY_YELLOW 0x00b9 KEYCODE_PROG_YELLOW در aosp/1388616 اضافه شد
0x0c 0x0081 واگذاری انتخاب
0x0c 0x0082 مرحله حالت
0x0c 0x0083 فراخوانی آخرین 0x0195 KEY_LAST 0xe5 KEYCODE_LAST_CHANNEL اضافه‌شده در aosp/1365551
0x0c 0x0084 وارد کردن کانال
‫0x0c 0x0085 سفارش فیلم
0x0c 0x0088 رایانه انتخاب رسانه 0x0178 KEY_PC
0x0c 0x0089 انتخاب رسانه تلویزیون 0x0179 KEY_TV ۳٫۰ 0x00aa KEYCODE_TV
0x0c 0x008a انتخاب رسانه WWW ‫0x0096 KEY_WWW ۱.۶ 0x0040 KEYCODE_EXPLORER
0x0c 0x008b Media Select DVD 0x0185 KEY_DVD
0x0c 0x008c تلفن انتخاب رسانه 0x00a9 KEY_PHONE ۳٫۰ 0x0005 KEYCODE_CALL
0x0c 0x008d راهنمای برنامه Media Select 0x016a برنامه کلیدی ۳٫۰ 0x00ac KEYCODE_GUIDE
0x0c 0x008e Media Select Video Phone 0x01a0 KEY_VIDEOPHONE
‫0x0c 0x008f انتخاب بازی‌های رسانه 0x01a1 KEY_GAMES
0x0c 0x0090 پیام‌های انتخاب رسانه 0x018c KEY_MEMO
0x0c 0x0091 Media Select CD 0x017f KEY_CD
‫0x0c 0x0092 Media Select VCR 0x017b KEY_VCR
0x0c 0x0093 انتخابگر رسانه 0x0182 KEY_TUNER
0x0c 0x0094 رها کردن 0x00ae کلید خروج
‫0x0c 0x0095 راهنما 0x008a KEY_HELP
‫0x0c 0x0096 نوار انتخاب رسانه 0x0180 KEY_TAPE
‫0x0c 0x0097 کابل انتخاب رسانه 0x017a KEY_TV2
0x0c 0x0098 انتخاب رسانه ماهواره 0x017d KEY_SAT
0x0c 0x0099 انتخاب رسانه امنیت
0x0c 0x009a صفحه اصلی انتخاب رسانه 0x016e KEY_PVR ۳٫۰ 0x00ad KEYCODE_DVR
‫0x0c 0x0061 زیرنویس ناشنوایان 0x0172 KEY_SUBTITLE 0x00af کلیدکد_زیرنویس‌های ناشنوایان اضافه‌شده در aosp/1365552
0x0c 0x009c افزایش کانال 0x0192 KEY_CHANNELUP ۳٫۰ 0x00a6 KEYCODE_CHANNEL_UP
0x0c 0x009d کاهش کانال 0x0193 KEY_CHANNELDOWN ۳٫۰ 0x00a7 KEYCODE_CHANNEL_DOWN
‫0x0c 0x009e ‫Media Select SAP
0x0c 0x00a0 VCR Plus 0x017c KEY_VCR2
0x0c 0x00a1 یک بار
0x0c 0x00a2 روزانه
0x0c 0x00a3 هفتگی
0x0c 0x00a4 ماهانه
‫0x0c 0x00b0 پخش کردن ‫0x00cf KEY_PLAY ۳٫۰ 0x007e KEYCODE_MEDIA_PLAY
0x0c 0x00b1 توقف موقت 0x0077 کلید_مکث ۳٫۰ 0x0079 KEYCODE_BREAK
0x0c 0x00b2 ضبط 0x00a7 KEY_RECORD ۳٫۰ 0x0082 KEYCODE_MEDIA_RECORD
0x0c 0x00b3 جلو بردن سریع 0x00d0 KEY_FASTFORWARD ۳٫۰ 0x005a KEYCODE_MEDIA_FAST_FORWARD
0x0c 0x00b4 عقب بردن 0x00a8 KEY_REWIND ۳٫۰ 0x0059 KEYCODE_MEDIA_REWIND
0x0c 0x00b5 اسکن قطعه بعدی 0x00a3 KEY_NEXTSONG ۳٫۰ 0x0057 KEYCODE_MEDIA_NEXT
0x0c 0x00b6 اسکن قطعه قبلی 0x00a5 KEY_PREVIOUSSONG ۳٫۰ 0x0058 KEYCODE_MEDIA_PREVIOUS
‫0x0c 0x00b7 ایست 0x00a6 KEY_STOPCD ۳٫۰ 0x0056 KEYCODE_MEDIA_STOP
0x0c 0x00b8 خارج کردن 0x00a1 KEY_EJECTCD ۳٫۰ ‫0x0081 KEYCODE_MEDIA_EJECT
0x0c 0x00b9 پخش تصادفی
0x0c 0x00ba انتخاب دیسک
0x0c 0x00bb وارد کردن دیسک
‫0x0c 0x00bc تکرار 0x01b7 KEY_MEDIA_REPEAT
‫0x0c 0x00be پیگیری عادی
‫0x0c 0x00c0 قاب بعدی
0x0c 0x00c1 قاب قبلی
0x0c 0x00c2 علامت
0x0c 0x00c3 پاک کردن علامت
0x0c 0x00c4 تکرار از علامت
0x0c 0x00c5 بازگشت به علامت
0x0c 0x00c6 جستجوی علامت جلو
0x0c 0x00c7 جستجوی علامت به عقب
0x0c 0x00c8 بازنشانی شمارشگر
0x0c 0x00c9 نمایش شمارنده
0x0c 0x00ca افزایش ردیابی
‫0x0c 0x00cb کاهش ردیابی
‫0x0c 0x00cc توقف / خارج کردن
0x0c 0x00cd پخش / مکث 0x00a4 کلید_پخش/مکث ۳٫۰ 0x0055 KEYCODE_MEDIA_PLAY_PAUSE
‫0x0c 0x00ce پخش / رد کردن
‫0x0c 0x00e2 صامت کردن 0x0071 KEY_MUTE ۳٫۰ 0x00a4 KEYCODE_VOLUME_MUTE
0x0c 0x00e5 تقویت باس 0x00d1 KEY_BASSBOOST
0x0c 0x00e6 حالت فراگیر
0x0c 0x00e7 بلندی صدا
0x0c 0x00e8 MPX
0x0c 0x00e9 افزایش صدا 0x0073 KEY_VOLUMEUP ۱.۶ 0x0018 KEYCODE_VOLUME_UP
‫0x0c 0x00ea کاهش صدا ‫0x0072 KEY_VOLUMEDOWN ۱٫۶ 0x0019 KEYCODE_VOLUME_DOWN
0x0c 0x0173 افزایش صدای جایگزین 0x00de KEYCODE_MEDIA_AUDIO_TRACK در aosp/1365554 اضافه شد
0x0c 0x0181 پیکربندی دکمه راه‌اندازی AL ابزار
‫0x0c 0x0182 پیکربندی دکمه قابل‌برنامه‌ریزی AL. 0x009c KEY_BOOKMARKS ۳٫۰ 0x00ae KEYCODE_BOOKMARK
0x0c 0x0183 پیکربندی کنترل مصرف‌کننده AL 0x00ab پیکربندی_کلید ‫۴.۰.۳ 0x00d1 KEYCODE_MUSIC
0x0c 0x0184 AL Word Processor 0x01a5 KEY_WORDPROCESSOR
0x0c 0x0185 ویرایشگر نوشتار AL 0x01a6 KEY_EDITOR
0x0c 0x0186 صفحه‌گسترده AL 0x01a7 KEY_SPREADSHEET
‫0x0c 0x0187 ویرایشگر گرافیک AL 0x01a8 KEY_GRAPHICSEDITOR
0x0c 0x0188 AL Presentation App 0x01a9 KEY_PRESENTATION
0x0c 0x0189 AL Database App 0x01aa KEY_DATABASE
‫0x0c 0x018a AL Email Reader 0x009b KEY_MAIL ۱.۶ 0x0041 KEYCODE_ENVELOPE
0x0c 0x018b AL Newsreader 0x01ab KEY_NEWS
0x0c 0x018c پست صوتی AL 0x01ac KEY_VOICEMAIL
‫0x0c 0x018d مخاطبین AL / دفترچه تلفن 0x01ad KEY_ADDRESSBOOK ‫۴.۰.۳ 0x00cf KEYCODE_CONTACTS
0x0c 0x018e تقویم / زمان‌بندی AL 0x018d KEY_CALENDAR ‫۴.۰.۳ 0x00d0 KEYCODE_CALENDAR
‫0x0c 0x018f مدیر پروژه / تکلیف AL
0x0c 0x0190 گزارش AL / روزنگار / کارت ساعت
0x0c 0x0191 AL Checkbook / Finance ‫0x00db KEY_FINANCE
‫0x0c 0x0192 ماشین‌حساب AL 0x008c KEY_CALC ‫۴.۰.۳ 0x00d2 KEYCODE_CALCULATOR
0x0c 0x0193 ضبط / بازپخش صوتی تصویری AL
0x0c 0x0194 مرورگر ماشین محلی AL 0x0090 KEY_FILE
0x0c 0x0195 AL LAN/WAN Browser
0x0c 0x0196 AL Internet Browser 0x0096 KEY_WWW ۱.۶ 0x0040 KEYCODE_EXPLORER
0x0c 0x0197 AL Remote Networking/ISP Connect
0x0c 0x0198 کنفرانس شبکه AL
0x0c 0x0199 گپ شبکه AL 0x00d8 KEY_CHAT
0x0c 0x019a AL Telephony / Dialer
0x0c 0x019b ورود به سیستم AL
0x0c 0x019c خروج از سیستم AL ‫0x01b1 KEY_LOGOFF
‫0x0c 0x019d ورود به سیستم / خروج از سیستم AL
0x0c 0x019e محافظ صفحه‌نمایش / قفل پایانه AL 0x0098 KEY_COFFEE ‫۴.۰ 0x001a KEYCODE_POWER
‫0x0c 0x019f پانل کنترل AL
0x0c 0x01a0 پردازنده خط فرمان AL / اجرا
0x0c 0x01a1 AL Process / Task Manager
0x0c 0x01a2 AL Select Task / Application (انتخاب تکلیف / برنامه AL)
0x0c 0x01a3 AL Next Task / Application
0x0c 0x01a4 تکلیف / برنامه قبلی AL
0x0c 0x01a5 توقف پیش‌گیرانه تکلیف / برنامه AL.
0x0c 0x01a6 مرکز راهنمایی یکپارچه AL 0x008a KEY_HELP
0x0c 0x01a7 اسناد AL 0x00eb KEY_DOCUMENTS
0x0c 0x01a8 اصطلاح‌نامه AL
0x0c 0x01a9 واژه‌نامه AL
0x0c 0x01aa AL Desktop
0x0c 0x01ab غلط‌یاب املایی AL 0x01b0 KEY_SPELLCHECK
0x0c 0x01ac بررسی دستور زبان AL
0x0c 0x01ad وضعیت بی‌سیم AL
0x0c 0x01ae جانمایی صفحه‌کلید AL
0x0c 0x01af محافظت دربرابر ویروس AL
‫0x0c 0x01b0 رمزگذاری AL
0x0c 0x01b1 محافظ صفحه‌نمایش AL
‫0x0c 0x01b2 زنگ‌های ساعت AL
0x0c 0x01b3 ساعت هوش مصنوعی
0x0c 0x01b4 مرورگر فایل AL
0x0c 0x01b5 وضعیت روشن بودن AL
0x0c 0x01b6 مرورگر تصویر AL 0x00e2 KEY_MEDIA ۳٫۰ 0x004f KEYCODE_HEADSETHOOK
0x0c 0x01b7 مرورگر صوتی AL 0x00d5 KEY_SOUND ‫۴.۰.۳ 0x00d1 KEYCODE_MUSIC
0x0c 0x01b8 مرورگر فیلم AL
0x0c 0x01b9 AL Digital Rights Manager
0x0c 0x01ba AL Digital Wallet
‫0x0c 0x01bc پیام‌رسانی فوری AL 0x01ae KEY_MESSENGER
0x0c 0x01bd ویژگی‌های سازنده اصلی محصول AL / مرورگر نکته‌ها 0x0166 KEY_INFO
‫0x0c 0x01be راهنمای AL OEM
0x0c 0x01bf انجمن آنلاین AL
0x0c 0x01c0 مرورگر محتوای سرگرمی AL
0x0c 0x01c1 مرورگر خرید آنلاین AL
0x0c 0x01c2 اطلاعات / راهنمایی «کارت هوشمند AL»
0x0c 0x01c3 AL Market / Finance Browser
‫0x0c 0x01c4 AL Customized Corp. News Browser
0x0c 0x01c5 AL Online Activity Browser
0x0c 0x01c6 AL Research / Search Browser
0x0c 0x01c7 پخش‌کننده صوتی AL
0x0c 0x0201 AC New 0x00b5 KEY_NEW
0x0c 0x0202 AC Open 0x0086 KEY_OPEN
0x0c 0x0203 بستن AC ‫0x00ce کلید_بستن
0x0c 0x0204 خروجی AC 0x00ae KEY_EXIT
0x0c 0x0205 بیشینه‌سازی تهویه مطبوع
0x0c 0x0206 کوچک کردن تهویه مطبوع
0x0c 0x0207 ذخیره کردن تهویه مطبوع 0x00ea KEY_SAVE
‫0x0c 0x0208 چاپ AC 0x00d2 KEY_PRINT
0x0c 0x0209 خصوصیات AC 0x0082 KEY_PROPS
0x0c 0x021a واگرداندن AC 0x0083 KEY_UNDO
0x0c 0x021b کپی AC 0x0085 کلید_کپی
0x0c 0x021c برش AC 0x0089 KEY_CUT
‫0x0c 0x021d جای‌گذاری AC 0x0087 کلید_جای‌گذاری
0x0c 0x021e AC انتخاب همه
‫0x0c 0x021f یافتن AC 0x0088 KEY_FIND
‫0x0c 0x0220 «یافتن و جایگزین کردن» AC
0x0c 0x0221 جستجوی AC 0x00d9 KEY_SEARCH ۱.۶ 0x0054 KEYCODE_SEARCH
0x0c 0x0222 AC Go To ‫0x0162 KEY_GOTO
0x0c 0x0223 صفحه اصلی AC 0x00ac KEY_HOMEPAGE ۳٫۰ 0x0003 KEYCODE_HOME
‫0x0c 0x0224 برگشتن به AC 0x009e کلید_بازگشت ۱.۶ 0x0004 KEYCODE_BACK
‫0x0c 0x0225 AC Forward 0x009f KEY_FORWARD ۳٫۰ 0x007d KEYCODE_FORWARD
‫0x0c 0x0226 توقف تهویه مطبوع 0x0080 KEY_STOP ۳٫۰ 0x0056 KEYCODE_MEDIA_STOP
‫0x0c 0x0227 بازآوری تهویه مطبوع 0x00ad KEY_REFRESH
‫0x0c 0x0228 پیوند قبلی AC
0x0c 0x0229 پیوند بعدی AC
0x0c 0x022a نشانک‌های AC 0x009c KEY_BOOKMARKS ۳٫۰ 0x00ae KEYCODE_BOOKMARK
‫0x0c 0x022b سابقه AC
‫0x0c 0x022c اشتراک‌های AC
‫0x0c 0x022d زوم‌پیش کردن AC 0x01a2 KEY_ZOOMIN
‫0x0c 0x022e زوم‌پس AC 0x01a3 KEY_ZOOMOUT
0x0c 0x022f بزرگ‌نمایی AC 0x01a4 KEY_ZOOMRESET 2
0x0c 0x0230 AC Full Screen View
0x0c 0x0231 نمای عادی AC
0x0c 0x0232 روشن/خاموش کردن نمای AC
0x0c 0x0233 AC Scroll Up 0x00b1 KEY_SCROLLUP ۳٫۰ 0x005c KEYCODE_PAGE_UP
0x0c 0x0234 پیمایش تهویه مطبوع به‌پایین ‫0x00b2 KEY_SCROLLDOWN ۳٫۰ 0x005d KEYCODE_PAGE_DOWN
‫0x0c 0x0236 حرکت عرضی به چپ AC
‫0x0c 0x0237 حرکت عرضی تهویه مطبوع به راست
‫0x0c 0x0239 AC New Window
0x0c 0x023a کاشی تهویه مطبوع به‌صورت افقی
0x0c 0x023b کاشی AC عمودی
0x0c 0x023c قالب AC
0x0c 0x023d ویرایش AC
0x0c 0x023e AC Bold
0x0c 0x023f ایتالیک AC
‫0x0c 0x0240 زیرخط‌دار کردن AC
0x0c 0x0241 خط‌خورده AC
‫0x0c 0x0242 زیرنویس AC
‫0x0c 0x0243 بالانگاشت AC
0x0c 0x0244 AC All Caps
0x0c 0x0245 چرخش افق‌گرد
0x0c 0x0246 تغییر اندازه AC
0x0c 0x0247 چرخش افقی AC
‫0x0c 0x0248 چرخش عمودی AC
‫0x0c 0x0249 آینه‌سازی افقی AC
0x0c 0x024a تهویه مطبوع آینه‌ای عمودی
0x0c 0x024b AC Font Select
0x0c 0x024c رنگ قلم AC
0x0c 0x024d اندازه قلم AC
0x0c 0x024e هم‌ترازی چپ AC
‫0x0c 0x024f هم‌ترازی مرکزی AC - افقی
0x0c 0x0250 هم‌ترازی راست AC
0x0c 0x0251 هم‌تراز کردن قطعه AC افقی
‫0x0c 0x0252 هم‌تراز کردن AC در بالا
0x0c 0x0253 هم‌تراز کردن مرکزی AC عمودی
‫0x0c 0x0254 هم‌تراز کردن تهویه مطبوع از پایین
0x0c 0x0255 AC Justify Block V
0x0c 0x0256 کاهش تورفتگی AC
0x0c 0x0257 افزایش تورفتگی AC
‫0x0c 0x0258 فهرست شماره‌دار دسترس‌پذیر
‫0x0c 0x0259 AC Restart Numbering
0x0c 0x025a فهرست گلوله‌ای AC
‫0x0c 0x025b ترویج AC
0x0c 0x025c تنزل رتبه AC
‫0x0c 0x025d تهویه مطبوع بله
‫0x0c 0x025e شماره AC
0x0c 0x025f لغو تهویه مطبوع 0x00df KEY_CANCEL
0x0c 0x0260 کاتالوگ AC
‫0x0c 0x0261 خرید / تسویه‌حساب AC
0x0c 0x0262 افزودن به سبد خرید AC
0x0c 0x0263 ازهم بازکردن AC
0x0c 0x0264 AC Expand All
0x0c 0x0265 جمع کردن تهویه مطبوع
0x0c 0x0266 AC Collapse All
0x0c 0x0267 پیش‌نمای چاپ AC
0x0c 0x0268 جای‌گذاری ویژه AC
0x0c 0x0269 حالت درج AC
0x0c 0x026a حذف AC
0x0c 0x026b قفل AC
‫0x0c 0x026c باز کردن قفل AC
0x0c 0x026d AC Protect
0x0c 0x026e AC Unprotect
‫0x0c 0x026f AC Attach Comment
0x0c 0x0270 AC Delete Comment
‫0x0c 0x0271 مشاهده نظر AC
‫0x0c 0x0272 انتخاب کلمه با AC
0x0c 0x0273 AC Select Sentence
0x0c 0x0274 AC Select Paragraph
‫0x0c 0x0275 انتخاب ستون AC
‫0x0c 0x0276 AC Select Row
0x0c 0x0277 AC Select Table
‫0x0c 0x0278 انتخاب شیء AC
0x0c 0x0279 ازنو انجام دادن / تکرار AC 0x00b6 کلید_انجام_مجدد
‫0x0c 0x027a مرتب‌سازی AC
0x0c 0x027b مرتب‌سازی AC صعودی
0x0c 0x027c مرتب‌سازی نزولی AC
0x0c 0x027d فیلتر تهویه مطبوع
‫0x0c 0x027e تنظیم ساعت تهویه مطبوع
0x0c 0x027f ساعت نمای AC
0x0c 0x0280 AC Select Time Zone
0x0c 0x0281 ویرایش مناطق زمانی AC
‫0x0c 0x0282 هشدار تنظیم تهویه مطبوع
‫0x0c 0x0283 پاک کردن هشدار تهویه مطبوع
‫0x0c 0x0284 زنگ ساعت به‌تعویق‌افتاده AC
‫0x0c 0x0285 هشدار بازنشانی تهویه مطبوع
0x0c 0x0286 همگام‌سازی تهویه مطبوع
‫0x0c 0x0287 ارسال/دریافت AC
‫0x0c 0x0288 AC Send To
0x0c 0x0289 پاسخ AC 0x00e8 KEY_REPLY
0x0c 0x028a پاسخ دادن به همه در AC
0x0c 0x028b پیام بازارسال AC 0x00e9 KEY_FORWARDMAIL
0x0c 0x028c ارسال AC 0x00e7 KEY_SEND
0x0c 0x028d AC Attach File
0x0c 0x028e بارگذاری AC
0x0c 0x028f بارگیری AC (ذخیره هدف به‌عنوان)
0x0c 0x0290 تنظیم حاشیه‌های AC
0x0c 0x0291 «درج ردیف» در «دستیار برنامه‌ریز»
0x0c 0x0292 درج ستون AC
0x0c 0x0293 فایل درج AC
0x0c 0x0294 AC درج تصویر
‫0x0c 0x0295 درج شیء با کمک هوش مصنوعی
0x0c 0x0296 نماد درج AC
0x0c 0x0297 ذخیره کردن و بستن AC
0x0c 0x0298 تغییر نام AC
‫0x0c 0x0299 ادغام AC
0x0c 0x029a تقسیم AC
‫0x0c 0x029b توزیع مساوی افقی
0x0c 0x029c توزیع عمودی AC

نگاشت‌های غیرHID اضافی

این نگاشت‌ها توابعی را توصیف می‌کنند که در HID ظاهر نمی‌شوند اما کدهای کلید Linux برای آن‌ها وجود دارد.

LKC نام کد کلید Linux نسخه AKC نام کد کلید Android یادداشت‌ها
0x01d0 KEY_FN ۳٫۰ 0x0077 KEYCODE_FUNCTION
0x01d1 کلید_FN_ESC ۳٫۰ 0x006f KEYCODE_ESCAPE 3
0x01d2 KEY_FN_F1 ۳٫۰ 0x0083 KEYCODE_F1 3
0x01d3 KEY_FN_F2 ۳٫۰ 0x0084 KEYCODE_F2 3
0x01d4 KEY_FN_F3 ۳٫۰ 0x0085 KEYCODE_F3 3
0x01d5 KEY_FN_F4 ۳٫۰ 0x0086 KEYCODE_F4 3
0x01d6 KEY_FN_F5 ۳٫۰ 0x0087 KEYCODE_F5 3
0x01d7 KEY_FN_F6 ۳٫۰ 0x0088 KEYCODE_F6 3
0x01d8 KEY_FN_F7 ۳٫۰ 0x0089 KEYCODE_F7 3
0x01d9 KEY_FN_F8 ۳٫۰ 0x008a KEYCODE_F8 3
0x01da KEY_FN_F9 ۳٫۰ ‫0x008b KEYCODE_F9 3
0x01db KEY_FN_F10 ۳٫۰ 0x008c KEYCODE_F10 3
0x01dc KEY_FN_F11 ۳٫۰ 0x008d KEYCODE_F11 3
0x01dd KEY_FN_F12 ۳٫۰ 0x008e KEYCODE_F12 3
0x01de KEY_FN_1 ۳٫۰ 0x0008 KEYCODE_1 3
0x01df KEY_FN_2 ۳٫۰ 0x0009 KEYCODE_2 3
0x01e0 KEY_FN_D ۳٫۰ 0x0020 KEYCODE_D 3
‫0x01e1 KEY_FN_E ۳٫۰ 0x0021 KEYCODE_E 3
0x01e2 KEY_FN_F ۳٫۰ 0x0022 KEYCODE_F 3
0x01e3 KEY_FN_S ۳٫۰ ‫0x002f KEYCODE_S 3
0x01e4 KEY_FN_B ۳٫۰ 0x001e KEYCODE_B 3

کلیدهای قدیمی پشتیبانی‌نشده

این نگاشت‌ها در نسخه‌های قبلی Android وجود داشتند اما با HID ناسازگار بودند یا از کدهای کلید غیر استاندارد Linux استفاده می‌کردند. دیگر پشتیبانی نمی‌شوند.

LKC نام کد کلید Linux نسخه AKC نام کد کلید Android یادداشت‌ها
‫0x00db KEY_EMAIL ۱.۶ 0x004d KEYCODE_AT 4
"" "" ۴٫۰ 4
0x00e3 KEY_STAR ۱.۶ 0x0011 KEYCODE_STAR 4
"" "" ۴٫۰ 4
0x00e4 KEY_SHARP ۱.۶ 0x0012 KEYCODE_POUND 4
"" "" ۴٫۰ 4
0x00e5 KEY_SOFT1 ۱٫۶ 0x0052 KEYCODE_MENU 4
"" "" ۴٫۰ 4
0x00e6 KEY_SOFT2 ۱٫۶ 0x0002 KEYCODE_SOFT_RIGHT 4
"" "" ۴٫۰ 4
0x00e7 KEY_SEND ۱.۶ 0x0005 KEYCODE_CALL 4
"" "" ۴٫۰ 4
0x00e8 KEY_CENTER ۱.۶ 0x0017 KEYCODE_DPAD_CENTER 4
"" "" ۴٫۰ 4
0x00e9 KEY_HEADSETHOOK ۱.۶ 0x004f KEYCODE_HEADSETHOOK 4
"" "" ۴٫۰ 4
0x00ea KEY_0_5 ۱.۶ 4
0x00eb KEY_2_5 ۱.۶ 4

یادداشت‌ها

  1. کد کلید Android مرتبط با کلیدهای عددی‌حرفی و نمادین رایج ممکن است براساس چیدمان صفحه‌کلید و زبان متفاوت باشد. به‌دلایل تاریخی، کدهای اسکن فیزیکی و کاربردهای HID مرتبط با کلیدهای صفحه‌کلید اغلب به‌صورت موقعیتی تعریف می‌شوند حتی اگر برچسب‌های چاپ‌شده روی آن کلیدها از زبانی به زبان دیگر متفاوت باشد.

    در صفحه‌کلید انگلیسی ایالات متحده (QWERTY)، کلید الفبایی بالا سمت راست با برچسب Q مشخص شده است. در صفحه‌کلید فرانسوی (AZERTY)، کلید در همان موقعیت با برچسب A مشخص شده است. صرف‌نظر از برچسب، در هر دو صفحه‌کلید، کلید الفبایی بالا سمت راست بااستفاده از کاربرد HID 0x07 0x0014 ارجاع داده می‌شود که به کد کلید لینوکس KEY_Q نگاشت شده است.

    وقتی Android با جانمایی صفحه‌کلید انگلیسی ایالات متحده پیکربندی شده باشد، کد کلید Linux‏ KEY_Q به کد کلید Android‏ KEYCODE_Q نگاشت می‌شود و نویسه‌های «Q» و «q» را تولید می‌کند. بااین‌حال، وقتی Android با چیدمان صفحه‌کلید فرانسوی پیکربندی شود، کد کلید Linux یعنی KEY_Q به کد کلید Android یعنی KEYCODE_A نگاشت می‌شود و نویسه‌های «A» و «a» را تولید می‌کند.

    کد کلید Android معمولاً نشان‌دهنده تفسیر زبان‌خاص کلید است، بنابراین ممکن است از کد کلید Android متفاوتی برای زبان‌های مختلف استفاده شود.

  2. 0x0c 0x022f AC Zoom در HID به‌عنوان کنترل خطی تعریف شده است اما هسته آن را به‌عنوان کلید نگاشت می‌کند که احتمالاً نادرست است.

  3. کلیدهای عملکرد Linux KEY_FN_* به کدهای کلید ساده‌تر نگاشت می‌شوند اما با بیت حالت فراداده META_FUNCTION که روی درست تنظیم شده است، ارسال می‌شوند.

  4. قبل‌از Android Ice Cream Sandwich 4.0، چیدمان کلید پیش‌فرض شامل نگاشت‌هایی برای برخی‌از کدهای کلید اضافی بود که در سرفایل‌های اصلی هسته Linux تعریف نشده بودند. این نگاشت‌ها از آن زمان برداشته شده‌اند زیرا این کدهای کلیدی که قبلاً تعریف نشده بودند از آن زمان در نسخه‌های جدیدتر هسته Linux معانی متفاوتی به آن‌ها اختصاص داده شده است.

منابع

  1. جدول‌های استفاده از USB HID نسخه ۱.۱۲
  2. هسته Linux 2.6.39: include/linux/input.h،‏ drivers/hid/hid-input.c
  3. Android ICS: qwerty.kl،‏ Generic.kl،‏ KeyEvent.java