كيفية تغيير رموز شريط التنقل أو إعادة ترتيب الأزرار دون الجذر

قد يقوم هؤلاء الذين يشغلون أول معاينة Android O Developer معاينة اللعبة باستخدام أداة تخصيص شريط التنقل المخفية الموجودة في موالف SystemUI. لقد كان مخصص شريط التنقل هذا موجودًا بالفعل في AOSP منذ شهور ، ولكن كان يعتقد أن الطريقة الوحيدة للوصول إليه على Android Nougat هي من خلال تعديل System UI APK ، والذي يتطلب بالطبع وصولاً إلى الجذر. لم نكتشف هذا الأسبوع إلا أنه يمكن الوصول إلى أداة تخصيص شريط التنقل المخفية في Android Nougat دون الحاجة إلى الوصول إلى الجذر أو ROM مخصص أو تعديل UI للنظام. باستخدام هذه الميزة ، يمكننا تغيير رموز شريط التنقل أو تبديل المفاتيح الموجودة حولها أو إضافة أزرار إضافية.

هذا صحيح - من الممكن تعديل شريط التنقل الخاص بك على ذاكرة الوصول العشوائي بالكامل غير مخزنة بالكامل مع أداة تحميل التشغيل المؤمنة. الوظائف التي اعتقد الناس أنها تقتصر على Android O يمكن الوصول إليها فعليًا لأي شخص يقوم بتشغيل Android Nougat على هواتف Nexus و Pixel و OnePlus وبعض هواتف Sony و HTC و Motorola. إذا كان جهازك يشغل برنامجًا قريبًا من برنامج Google (آسف لمستخدمي Samsung و Huawei / Honor) ، فمن المحتمل أن يكون لدى جهازك أداة تخصيص شريط التنقل الخفية AOSP التي يمكننا استخدامها. في هذا البرنامج التعليمي ، سأوضح لك كيف يمكنك استخدام أداة تخصيص شريط التنقل لتغيير أيقونات الأزرار إلى أي شيء تريده أو إعادة ترتيبها بأي ترتيب تريده.

Google Pixel Nav Bar على Nexus 6

Reversed Nav Bar في Nexus 6


تعديل شريط التنقل - الإعداد

المتطلبات : ستحتاج إلى جهاز متوافق مع أداة تخصيص شريط التنقل AOSP. راجع قسم "التوافق" في هذا الموضوع. (ملاحظة: قد لا يتم سرد OEM أو نوع جهازك في هذا الخيط. الطريقة الوحيدة لمعرفة ما إذا كان جهازك متوافقًا هو تجربة ذلك ، وسنعرض لك كيفية القيام بذلك أدناه.

هناك طريقتان لتعديل شريط التنقل الخاص بنا. أحدهما مع أحد التطبيقات ، والآخر من خلال أوامر ADB shell (وهي طريقة عمل التطبيق). سوف نعرض عليك كليهما للتأكد من اكتمالهما ، لكن لاحظ أنه اعتبارًا من الآن ، لا يمكنك تعديل أيقونات شريط التنقل من خلال التطبيق حتى يقوم المطور بتحديث تطبيقه ليشمل هذه الميزة.

أول شيء يتعين علينا القيام به هو التأكد من أنه من الممكن تعديل شريط التنقل على جهازك. إذا كان جهازك واحدًا من تلك المدرجة كمتوافقة في سلسلة رسائل شريط التنقل المخصص ، فستكون هناك فرص لذلك. يمكننا التحقق من خلال تشغيل البرنامج التعليمي الموجز الذي يصاحب هذا التطبيق.

قم بتثبيت التطبيق من متجر Google Play (وقم أيضًا بالاشتراك في الاختبار التجريبي حتى نتمكن من استخدام الميزة التجريبية لإعادة ترتيب شريط التنقل لاحقًا). بعد ذلك ، افتح التطبيق وتابع من خلال الشاشات التمهيدية. سيطلب منك شريط التنقل المخصص منحها إذنًا معينًا يسمى WRITE_SECURE_SETTINGS من أجل متابعة استخدام التطبيق. هناك طريقتان يمكنك القيام بذلك ، كما هو مذكور في التطبيق.

  1. إذا كان لديك جهاز ذو جذر ، فافتح Terminal Emulator على هاتفك ومنحه حق الوصول إلى الجذر عن طريق كتابة su . ثم أدخل هذا الأمر: pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS
  2. إذا لم يكن جهازك متجذرًا ، فستحتاج إلى منح الإذن من خلال بنك التنمية الآسيوي. افتح موجه الأوامر / الجهاز على جهازك ، ثم أدخل الأمر التالي: adb shell pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS

بمجرد منح التطبيق هذا الإذن من خلال أي من الطريقتين المذكورتين أعلاه ، فسيواصل التطبيق اختبار التوافق. إذا كان شريط التنقل الخاص بك لا يتغير ، فأنت محظوظ للأسف. إذا تغير شريط التنقل لعرض زر سهم لليمين ، فسيتم دعم جهازك! يمكننا الآن الانتقال إلى تعديل شريط التنقل الخاص بنا.


إعادة ترتيب أزرار شريط التنقل

طريقة التطبيق

الآن وبعد إعداد التطبيق ، أصبح من السهل جدًا إعادة ترتيب أزرار شريط التنقل. يجب أن تكون على الإصدار التجريبي من تطبيق Custom Navigation Bar لتتمكن من القيام بذلك ، لذا عد وتأكد من أنك في قناة beta قبل المتابعة.

إذا كنت تستخدم الإصدار التجريبي ، فسترى قسمًا يسمى القرص التجريبي في قسم الإعدادات الرئيسي. اضغط على ذلك وسترى الخيارات التي تسمح لك باستبدال المفاتيح الحالية والمنزل والمفاتيح الحديثة. يمكنك بسهولة إعادة ترتيب مفاتيحك هنا من خلال تغيير زر الرجوع إلى زر النظرة العامة (الأخيرة) وتغيير زر النظرة العامة (الأخيرة) إلى زر الرجوع. أو قم بتغييرها بأي طريقة تريدها ، لا توجد قيود حقيقية هنا. بعد تبديل مفاتيحك ، يمكنك أيضًا التنقل باستخدام خيارات التخطيط في قائمة إعدادات شريط التنقل.

طريقة بنك التنمية الآسيوي

وإليك كيفية القيام بالشيء نفسه باستخدام أوامر ADB ، إذا كنت تفضل ذلك. الأمر الذي سنقوم بتعديله هو تفضيل الإعداد الآمن المسمى sysui_nav_bar. هذا التفضيل عبارة عن سلسلة تحتوي على تخطيط شريط التنقل. البنية الافتراضية للتفضيل هي كما يلي

 space, back;home;recent, space 

حيث تمثل المساحة مساحة فارغة تفصل مفاتيح شريط التنقل عن بعضها البعض ، وتمثل الأزرار الافتراضية الثلاثة في شريط التنقل في الخلف والمنزل والحديث. إذا أردنا تبديل الخلف والمفتاح الأخير ، على سبيل المثال ، فسنحتاج إلى تعديل السلسلة كما يلي

 space, recent;home;back, space 

ملاحظة: إذا كنت تحاول إدخال أي من الأوامر التالية من بيئة قذر ذات جذر مثل Terminal Emulator على هاتفك ، فستحتاج إلى حذف "adb shell" من الأوامر قبل إرسالها.

الآن ، من أجل تعديل هذه السلسلة بالفعل ، نحتاج إلى استخدام الأمر ADB shell مع بناء الجملة هذا

 adb shell settings put secure sysui_nav_bar "STRING" 

وبالتالي ، فإن الأمر الذي نرسله لتبديل المفاتيح الأخيرة والظهرية سيبدو هكذا

 adb shell settings put secure sysui_nav_bar "space, recent;home;back, space" 

كما قد تخمن ، هذا مرن إلى حد ما. يمكننا تحريك المفاتيح ولكننا نريد بتعديل قيمة سلسلة التفضيل. يمكننا ، على سبيل المثال ، أن نجعل مفاتيح شريط التنقل المقلوبة لدينا مبررة لليسار أو مبررة لليمين من خلال تغيير المكانين اللذين تم وضعهما فيهما:

تركت له ما يبرره:

 adb shell settings put secure sysui_nav_bar "recent;home;back, space, space" 

برر الحق:

 adb shell settings put secure sysui_nav_bar "space, space, recent;home;back" 

ولكن يمكننا أيضًا تغيير أزرار شريط التنقل لتصبح شيئًا مختلفًا تمامًا عن المفاتيح القياسية الخلفية أو الرئيسية أو الحديثة ، مثل إرسال أحد مفاتيح KeyEvents العديدة. سنستفيد من هذه الحقيقة في القسم التالي ، حيث نعرض لك كيفية تغيير الرموز على أزرار شريط التنقل.


رموز شريط التنقل مخصص

الآن ، قد لا يبدو القسم التالي كأنه صفقة ضخمة نظرًا لوجود العديد من التطبيقات على متجر Play تعد بتغيير شريط التنقل بدون جذر. ويعملون - ومع ذلك ، يفيد العديد من المستخدمين أن هذه التطبيقات عربات التي تجرها الدواب في بعض التطبيقات مثل Chrome ، عند تشغيل الفيديو بملء الشاشة ، أو بعض الألعاب. علاوة على ذلك ، تتطلب منك العديد من هذه التطبيقات تمكين خدمة إمكانية الوصول من مراقبة التطبيقات لمعرفة وقت إعادة تلوين شريط التنقل ، مما قد يقلل من الأداء. أخيرًا ، إذا كنت تعتمد على هذه التطبيقات لفترة طويلة جدًا ، فقد تتفاجأ فجأة لرؤيتها تتوقف عن العمل عندما يبدأ تطبيق Android O لأن إصدار Android التالي يقتل قدرة هذه التطبيقات على الاعتماد على عناصر واجهة مستخدم System.

تعتمد الطريقة التي نستخدمها على تطبيق Google لموالف شريط التنقل ، لذلك لا يحتوي على أي من هذه المشكلات. ومع ذلك ، هناك مشكلة واحدة في الوقت الحالي نريد أن نكون مقدمين حولها: إذا اخترت اتباع هذه الطريقة لتعديل زر الصفحة الرئيسية ، فلن يعمل إجراء الضغط على زر الصفحة الرئيسية لفترة طويلة مما يعني أنه لا يمكنك الوصول بسرعة إلى مساعد Google من زر المنزل بعد الآن. إذا كنت موافقًا على ذلك ، فإليك كيفية تغيير الرموز على شريط التنقل.

أول ما عليك القيام به هو تنزيل الرموز التي تريد استبدال رموز مفاتيح شريط التنقل الافتراضية بها. سأوفر لك روابط التنزيل للاستيلاء على أيقونات شريط التنقل في Google Pixel ، ولكن الأمر متروك لك للعثور على أيقوناتك الخاصة إذا كنت تريد أي شيء آخر. ستحتاج إلى رموز بتنسيق PNG ، وفيما يتعلق بالحجم ، يمكنك تحديد حجم الرموز التي تحتاج إليها من خلال البحث عن مقاييس كثافة شاشة جهازك على Material.io وربط ذلك مع مخطط مرجعي لحجم الرمز.

الاعتمادات لاستخراج هذه الرموز شريط التنقل جوجل بكسل يذهب إلى كبار الأعضاء dariomrk. قم بتنزيل هذا الأرشيف إذا كان لديك شاشة 1920 × 1080 بكسل ، وهذا إذا كان لديك شاشة 2560 × 1440 بكسل. قم باستخراج محتويات أي ملف مضغوط في مجلد يسمى "NavIcons" في الدليل الجذر للتخزين الخاص بك.

بمجرد وجود الرموز في المكان المناسب ، أدخل الأمر ADB shell التالي (تحذير ، إنه طويل):

 adb shell settings put secure sysui_nav_bar "space, key(4:file:///storage/emulated/0/NavIcons/back.png);key(3:file:///storage/emulated/0/NavIcons/home.png);key(187:file:///storage/emulated/0/NavIcons/recents.png), space" 

ما يفعله هذا الأمر هو استبدال مفاتيح مفاتيح المنزل والأزرار الحديثة التي تقوم بنفس الوظيفة مع مفاتيح التشغيل الرئيسية. على وجه الخصوص ، يتم استبدال الخلف بـ KEYCODE_BACK ، ويتم استبدال المنزل بـ KEYCODE_HOME ، ويتم استبدال الأحدث بـ KEYCODE_APP_SWITCH. تؤدي أكواد المفاتيح هذه الوظيفة نفسها بالضبط ، ولكن نظرًا لأننا نستخدم KeyEvents ، يمكننا تحديد الرمز الذي نريد استخدامه لهم. في هذه الحالة ، نشير إلى back.png و home.png و recents.png التي قمنا بحفظها في / NavIcons.

ومع ذلك ، من خلال استبدال مفاتيح الأسهم بـ KeyEvents ، فإننا نفقد القدرة المنزلية للضغط لفترة طويلة لأنه لا توجد حاليًا طريقة للتعرف على أحداث الضغط الطويل لمدخلات المفاتيح المحاكاة.

أدرك أنه في الوقت الحالي ، قد لا تبدو هذه الطريقة مثالية أو سهلة التنفيذ ، ولكن في وقت كتابة هذا التقرير ، لم يتم تحديث تطبيق Custom Navigation Bar لدعم إضافة أيقوناتك الخاصة. في الوقت الحالي ، الطريقة التي تتبعها (وهي بالضبط طريقة عمل هذا التطبيق ، وعندما يتم تحديث التطبيق ، ستواجه نفس القيد) هي كيفية الحصول على أي رموز مخصصة تريدها على شريط التنقل.


هذا كل شيء لهذا البرنامج التعليمي. في البرامج التعليمية المستقبلية ، سأعرض استخدامات عملية محتملة لتغيير شريط التنقل الخاص بك ، خاصة بطريقة سياق باستخدام تطبيق أتمتة مثل تاسكر. اتبع فئة البرامج التعليمية لتظل على علم بأحدث النصائح والحيل التي ننشرها.