برنامه جایگزینی دکمه های لمسی در اندروید. Android - تخصیص مجدد دکمه - راه اندازی سریع برنامه های مورد علاقه خود را تنظیم کنید. نمای کلی برنامه Keymapper

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

مقدمه

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

دکمه‌های پیمایش روی صفحه همراه با صفحه می‌چرخند، در صورت عدم نیاز ناپدید می‌شوند، رنگ را تغییر می‌دهند و به طور یکپارچه در رابط صفحه اصلی ادغام می‌شوند. اگر ایده بی فایده بودن وجود سه دکمه در آن واحد را کنار بگذاریم (بالاخره، مردم اپل با یک دکمه کنار می آیند و احساس ضعف نمی کنند) و سیستم های ناوبری نسبتا راحت مانند PIE یا "MIUI navigation bubble" "، سپس دکمه های روی صفحه بهترین چیزی است که تا کنون اختراع شده است.

بنابراین. به دلایلی، ایده فوق العاده و شگفت انگیز من که هیچ چیز بهتر از دکمه های روی صفحه نمایش وجود ندارد، توسط بسیاری از تولیدکنندگان گوشی های هوشمند به اشتراک گذاشته نشده است. و نه تنها آنها را به اشتراک نمی گذارند، بلکه به روشی کاملاً هیولایی به اشتراک نمی گذارند و شما را مجبور می کنند از یک تلفن هوشمند با دکمه های لمسی (AAA!)، مجهز به نور پس زمینه پویا (AAA-2!) و دکمه Back در سمت راست استفاده کنید. سمت صفحه (AAA-3: ضربه قاطع).

وضعیت تا حد زیادی غیرقابل قبول است و با توجه به آن توسعه دهنده مهربانفریمور هیچ تنظیماتی برای فعال کردن کلیدهای روی صفحه و تنظیمات برای کنترل دکمه های لمسی ارائه نکرده است، من مجبور شدم این کار را خودم انجام دهم. دو گزینه برای اقدام بیشتر وجود داشت:

  • دکمه های لمسی را به حالت دلخواه برسانید، یعنی نور پس زمینه را خاموش کنید و کلید "بازگشت" را به سمت چپ حرکت دهید (حتی اگر شبیه "مربع" به نظر برسد، جالب تر است).
  • دکمه های لمسی را به طور کامل غیرفعال کنید و دکمه های روی صفحه را فعال کنید.

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

روش شماره یک تنظیم دکمه های لمسی

ابتدا سعی می کنیم نور پس زمینه دکمه ها را خاموش کنیم. برای این کار به روت، شبیه ساز ترمینال و دایرکتوری نیاز داریم /sysدر ریشه سیستم فایل این ترکیب است. ما با هسته لینوکس سر و کار داریم و در سیستم های مبتنی بر آن، همه اطلاعات مهمدر مورد سخت افزار، و همچنین "سوئیچ های تعویض" که آن را کنترل می کنند، معمولا در سیستم فایل sysfs متصل به دایرکتوری قرار دارند. /sys.

در واقع sysfs یکنواخت نیست سیستم فایلبه طور دقیق تر، مبتنی بر فایل است، اما با فایل های به اصطلاح مصنوعی کار می کند. اما آنها روی دیسک ذخیره نمی شوند، این یک نوع رابط برای برقراری ارتباط با درایورها است: من فایل را خواندم - اطلاعات مربوط به قطعه آهن را دریافت کردم، آن را یادداشت کردم - تنظیماتی را تغییر دادم. و برای نوشتن فقط به حقوق ریشه نیاز دارید.

بنابراین، ما ریشه می گیریم، یک شبیه ساز ترمینال (یا بهتر) اجرا می کنیم. و موارد زیر را می نویسیم:

# su # cd /sys

# find -name \*button\* ./leds/button-backlight

بینگو! این یک کاتالوگ است /sys/class/leds/button-backlight. بیایید به آن بپریم و ببینیم داخل آن چیست:

# cd /sys/class/leds/button-backlight # ls روشنایی دستگاه max_brightness power subsystem trigger uevent

من نوکیا 3310 خود را روی آن فایل قرار دادم روشناییروشنایی دکمه فعلی است و حداکثر_روشنایی- بیشترین. بیایید حدس را با نوشتن مقدار 100 در فایل اول بررسی کنیم (خوب، مانند 100٪، اگرچه مقیاس آن مشخص نیست):

# echo 100 > روشنایی

عالی است، دکمه ها روشن هستند و حتی قرار نیست خاموش شوند.

لحظه حقیقت - مقدار 0 را در فایل max_brightness می نویسیم:

# echo 0 > max_brightness

دکمه ها برای همیشه خاموش شدند، مثل لامپ دیشب ایوان من.

اما درست مانند یک لامپ، در صورت راه اندازی مجدد، می توانند دوباره روشن شوند. یعنی دستور فقط در جلسه جاری معتبر است. خوشبختانه، این مشکلی نیست، ما دستور خود را در یک اسکریپت بر روی یک کارت حافظه قرار می دهیم:

# mkdir /sdcard/boot # echo "echo 0 > /sys/class/leds/button-backlight/max_brightness" > /sdcard/boot

و ما به نوبه خود آن را با استفاده از بارگذاری خودکار قرار می دهیم. ما برنامه را اجرا می کنیم، سه چک باکس اول را انتخاب می کنیم، از گزینه Select folder برای انتخاب دایرکتوری بوت روی کارت حافظه استفاده می کنیم.


نیمی از کار انجام شده است، باید دکمه های "بازگشت" و "مرور" را تعویض کنید. برای این کار باید چیدمان دکمه ها را تغییر دهید. در اندروید، در چندین فایل دایرکتوری قرار دارد /system/usr/keylayout/. تعداد کمی از آنها وجود دارد، اما اگر فایل‌های مشابه را دور بیندازیم Vendor_2378_Product_100a.klو qwerty.kl(آنها چیدمان های کیبورد Qwerty کامل را که اندروید پشتیبانی می کند را خارج از جعبه ذخیره می کنند)، سپس حداکثر پنج قطعه باقی می ماند.

یکی از آنها دقیقاً همان چیزی است که ما نیاز داریم. گوشی های هوشمند اغلب از فایل استفاده می کنند ft5x06_ts.kl، مخصوص کنترلر صفحه لمسی FT5x06 (دکمه ها حساس به لمس هستند، درست است؟)، اما در مورد من معلوم شد که این فایل است Vendor_2378_Product_100a.kl.

اگر این فایل را باز کنید، می توانید سه خط مورد نظر خود را مشاهده کنید:

کلید 158 برگشت کلید مجازی 139 منوی کلید مجازی 102 HOME VIRTUAL

تنها جابجایی اعداد 158 و 139 در مکان ها باقی مانده است (هر کدام مدیر فایلبا امتیازات ریشه). پس از راه اندازی مجدد، طرح جدید اعمال می شود.

روش شماره دو کلیدهای صفحه نمایش

اینجا حتی راحت تر است. اندروید دارای یک متغیر دیباگ ویژه است qemu.hw.mainkeys، که به شما امکان می دهد دید کلیدهای پیمایش روی صفحه را کنترل کنید. اگر مقدار آن 0 باشد، کلیدها روی صفحه نمایش داده می شوند، 1 اثر معکوس دارد.

متغیر را با مقدار دلخواه در فایل می نویسیم /system/build.prop، و این همه است:

# su # mount -o remount,rw /system # cp /system/build.prop /system/build.prop.bak # echo qemu.hw.mainkeys=0 > /system/build.prop

نتیجه گیری

اینها اقدامات مجرمانه ای هستند که گاهی اوقات باید انجام دهید تا گوشی هوشمند خود کمی راحت تر شود. در مورد من، من روی گزینه سوم قرار گرفتم: دکمه ها را خاموش کردم و LMT Launcher را نصب کردم. به نظر من این بیشترین است راه راحتمدیریت.

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

پس از نصب برنامه و راه اندازی آن برای اولین بار، یک پنل با دکمه ها دریافت خواهید کرد که در مرکز صفحه نمایش قرار می گیرد. مکان آن قابل تغییر است، همچنین می توانید اندازه دکمه ها، فاصله بین آنها و شفافیت خود پنل را تنظیم کنید.

برای دکمه صفحه اصلیشما می توانید رفتار آن را در فشار طولانی پیکربندی کنید: یا اجرا می شود Google Now ، یا به عنوان یک دکمه کار کنید قدرت. بعلاوه نرم شناور کلیدهابه شما امکان می دهد آیکون های دکمه را تغییر دهید. اگر می خواهید موقعیت عمودی پانل را انتخاب کنید، برای این کار فقط باید تیک گزینه موقعیت افقی را در منو بردارید. در آنجا می توانید گنجاندن برنامه را در هنگام بوت نیز فعال کنید.

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

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

همه چیز همیشه به طور غیرمنتظره می شکند. افتادن گوشی روی زمین کاشی کاری اتفاقی ناگوار است؛ غرق شدن آن در وان حمام امری عادی است که بیش از آنچه در ابتدا به نظر می رسد رایج است. آمار تماس برای مراکز خدماتیحاوی شکایات بسیاری در مورد تصادفات سریال "سقوط و شکست" حتی بیشتر از غرق شدن است. در عین حال، نباید انتظار داشته باشید که اولین سقوط، بستر لمسی یا حتی خود صفحه را از بین ببرد - در بیشتر موارد، عواقب حوادث ناگوار چندان مخرب به نظر نمی رسد. از جمله موارد دیگر، عدم کارکرد ناگهانی دکمه‌های بازگشت فیزیکی، صفحه اصلی و منو است. اگر این مشکل برای گوشی شما اتفاق افتاده است و هنوز پولی برای تعمیر وجود ندارد - نگران نباشید. راه حل نسبتا ساده ای برای این مشکل رایج وجود دارد. اکنون به شما آموزش می دهیم که اگر دکمه های فیزیکی دیگر کار نمی کنند، چگونه دکمه های روی صفحه گوشی هوشمند خود را فعال کنید.

برای اینکه همه چیز درست شود، باید بدست آورید حقوق ریشه. دسترسی مدیر به اعماق فایل های سیستم گاهی اوقات دشوار است. اما با ظهور اپلیکیشن هایی که دسترسی لازم را برای شما به دست می آورند، دیگر نیازی به خواندن دستورالعمل های چند صفحه ای ندارید. کافیست برنامه Kingo Root را روی کامپیوتر خود نصب کرده و گوشی خود را وصل کنید. تنها کاری که باید در حین نصب برنامه انجام شود این است که در تنظیمات گوشی، قسمت "امنیت"، "USB Debugging" را فعال کنید. همین. با فشار دادن دکمه بزرگ Root در رابط کینگو روت، حقوق مدیر را فعال کنید.

مرحله دوم کمی پیچیده تر به نظر می رسد. شما باید از دانلود کنید گوگل پلی(یا کمی ... منابع جایگزین) برنامه ریشهکاوشگر آن را روی گوشی هوشمند خود نصب کنید. این برنامه را اجرا کنید، دایرکتوری System و در آن - build.prop را پیدا کنید. اگر چنین فایلی در دایرکتوری سیستم قابل مشاهده نباشد، مهم نیست. در گوشه بالای برنامه یک بیضی وجود دارد - روی آن ضربه بزنید تا یک زیر منو باز شود. در تنظیمات برنامه، مورد "نمایش فایل های مخفی". ضرر فوراً ظاهر می شود.

در گوشه سمت چپ روت اکسپلورریک مورد دیگر وجود دارد که ما نیاز داریم - r / w. یک بار آن را لمس کنید و انتخاب خود را تایید کنید. این عمل امکان ویرایش را فراهم می کند فایل های سیستمی. حالا build.prop را لمس کرده و انگشت خود را روی آن نگه دارید. منوی بالاتغییر خواهد کرد و از لیست کشویی (در همان بیضی) مورد فرعی "باز کردن در ویرایشگر متن" را خواهید یافت.

پیمایش کنید باز کردن فایلبه پایین - همه این لیست های طولانی تنظیمات هنوز مورد نیاز نیست. در پایین، خط qemu.hw.mainkeys=0 را اضافه کنید. فایل را ذخیره کنید و گوشی خود را ریستارت کنید.

به پایان رسید، سه دکمه روی صفحه در پایین صفحه ظاهر شد - شبیه به آنچه در صفحه نمایش هر تبلتی می بینید. و پس از تعمیر دکمه‌های فیزیکی، با جایگزین کردن خط qemu.hw.mainkeys=0 با qemu.hw.mainkeys=1 و راه‌اندازی مجدد دستگاه، کاملاً امکان پنهان کردن دکمه‌های مجازی وجود دارد.

خیلی ها هنگام خرید با شرایط آشنا هستند گوشی هوشمند جدیدو دکمه فیزیکی پاور عملکرد عکاسی ندارد و همچنین کلید جداگانهبرای این، اما در آخرین دستگاه آن بود و بسیار کمک کرد. در نگاه اول، یک چیز کوچک است، اما دست ها خود به سمت مکانیک کشیده می شوند، نه حسگر، و در نامناسب ترین لحظه.

تبلیغات

به کمک بیایید برنامه های ویژه، به شما این امکان را می دهد تا کلیدهای فیزیکی گجت را به طور کامل مجدداً برنامه ریزی کنید و هر اقدامی را به آنها اختصاص دهید. این به ویژه در صورتی مفید است که دکمه پاور خراب باشد یا می‌خواهید آهنگ‌ها را مانند یک پخش‌کننده mp3 به عقب برگردانید، اما دستگاه داخلی نمی‌تواند این کار را انجام دهد... آیا برای این کار به حقوق ریشه نیاز دارید؟ آیا اشکالاتی وجود خواهد داشت؟ اصلا چگونه کار می کند؟ امروز سعی می کنم به سوالات مطرح شده پاسخ دهم.

برای شروع به معرفی موضوعات آزمون می پردازم. اولین برنامه حداقل در Google Play روسی "Key Remapping" نام دارد. می‌تواند با دستکاری‌کننده‌های فیزیکی و لمسی کار کند، اما برای برخی اقدامات به حقوق ریشه نیاز دارد. شرکت‌کننده دوم Button Mapper خواهد بود که می‌تواند همین کار را انجام دهد، اما اصلاً به حقوق ریشه نیاز ندارد، که در حال حاضر جالب است.

تجهیزات تست عبارت بودند از:

  • تبلت DEXP Ursus 8EV2 3G (Android 4.4.2، پردازنده MT8382، 4 x Cortex-A7 1.3 گیگاهرتز، هسته ویدیویی Mali-400 MP2، 1 گیگابایت رم، باتری 4000 میلی آمپر ساعت، ماژول 3G، Wi-Fi 802.11b ;
  • تلفن هوشمند Homtom HT3 Pro (Android 5.1 Lollipop، پردازنده MT6735P، 4 x Cortex-A53 1.0 گیگاهرتز، 64 بیت، هسته ویدیویی Mali-T720، 2 گیگابایت رم، باتری 3000 میلی آمپر ساعت، ماژول 4G، ماژول Wi-Fi 802/11b/g. ).

تبلیغات

نمای کلی برنامه Keymapper

این برنامه برای مدت طولانی به‌روزرسانی نشده است، اما شاید این کار ضروری نباشد، زیرا می‌تواند هر کاری را که می‌توان با کلیدهای فیزیکی انجام داد: تعیین هر عمل، راه‌اندازی برنامه‌های خاص، غیرفعال کردن دکمه‌ها و حتی تجویز کلیدهای ترکیبی برای دسترسی به موارد خاص. کارکرد.

"Key Remapping" فقط با Android 4.3 یا بالاتر کار می کند، به اشتراک گذاری توزیع شده است و شامل یک رابط ترجمه شده به روسی است. بدین ترتیب ما برای چنین برنامه هایی به نوعی استاندارد می رسیم که در آینده به آن تکیه خواهیم کرد. یا شاید نخواهیم کرد، زیرا این تنها یک برداشت اولیه است.

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