سنوضح لك في هذا البرنامج التعليمي كيفية تغيير الرموز الموجودة على شريط التنقل أو إعادة ترتيب الأزرار إذا كنت تستخدم نظام Nougat. لا حاجة للجذر.
أولئك منكم الذين يشغلون المركز الأول معاينة مطور Android O ربما تلاعبت بمخبأها مخصص شريط التنقل الموجود في موالف SystemUI. إن أداة تخصيص شريط التنقل هذه موجودة بالفعل في AOSP منذ أشهر، ولكن كان يُعتقد أن الطريقة الوحيدة للوصول إليها على Android Nougat هي من خلال تعديل واجهة المستخدم لنظام APK، والتي، بطبيعة الحال، سوف تتطلب الوصول إلى الجذر. لم نكتشف حتى هذا الأسبوع فقط أن أداة تخصيص شريط التنقل المخفية في Android Nougat يمكنها فعل ذلك يمكن الوصول إليها فعليًا دون الحاجة إلى الوصول إلى الجذر أو ذاكرة القراءة فقط (ROM) المخصصة أو تعديل واجهة مستخدم النظام. باستخدام هذه الميزة، يمكننا تغيير أيقونات شريط التنقل، أو تبديل المفاتيح، أو إضافة أزرار إضافية.
هذا صحيح - من الممكن تعديل شريط التنقل الخاص بك على ذاكرة ROM مخزنة بالكامل وغير متجذرة باستخدام أداة تحميل التشغيل المقفلة. الوظائف التي اعتقد الناس أنها تقتصر على Android O هي في الواقع متاحة لأي شخص يستخدم Android Nougat على Nexus وPixel وOnePlus وبعض هواتف Sony وHTC وMotorola. إذا كان جهازك يشغل برنامجًا قريبًا من برنامج Google (عذرًا لمستخدمي Samsung وHuawei/Honor)، فمن المحتمل أن يكون جهازك مزودًا بمخصص شريط التنقل AOSP المخفي الذي يمكننا استخدامه. في هذا البرنامج التعليمي، سأوضح لك كيف يمكنك استخدام أداة تخصيص شريط التنقل
شريط Google Pixel Nav على جهاز Nexus 6
تعديل شريط التنقل - الإعداد
متطلبات: ستحتاج إلى جهاز متوافق مع أداة تخصيص شريط التنقل AOSP. راجع قسم "التوافق". في هذا الموضوع. (ملاحظة: قد لا يتم إدراج OEM أو نوع جهازك في هذا الموضوع. الطريقة الوحيدة لمعرفة ما إذا كان جهازك متوافقًا هي تجربته، وهو ما سنوضح لك كيفية القيام به أدناه.
هناك طريقتان لتعديل شريط التنقل الخاص بنا. أحدهما مع تطبيق، والآخر من خلال أوامر ADB shell (وهي الطريقة التي يعمل بها التطبيق). سنعرض لك كليهما للتأكد من اكتمالهما، ولكن لاحظ أنه اعتبارًا من الآن، لا يمكنك تعديل أيقونات شريط التنقل من خلال التطبيق حتى يقوم المطور بتحديث تطبيقه ليشمل هذه الميزة.
أول شيء يتعين علينا القيام به هو التأكد من إمكانية تعديل شريط التنقل على جهازك. إذا كان جهازك أحد الأجهزة المدرجة على أنها متوافقة في موضوع شريط التنقل المخصص، فمن المرجح أن يكون كذلك. يمكننا التحقق من خلال تشغيل البرنامج التعليمي الموجز المصاحب لهذا التطبيق.
تثبيت التطبيق من متجر جوجل بلاي (و أيضا قم بالتسجيل للاختبار التجريبي حتى نتمكن من استخدام الميزة التجريبية لإعادة ترتيب شريط التنقل لاحقًا). بعد ذلك، افتح التطبيق وتابع عبر الشاشات التمهيدية. سيطلب منك شريط التنقل المخصص منحه إذنًا معينًا يسمى WRITE_SECURE_SETTINGS لمتابعة استخدام التطبيق. هناك طريقتان يمكنك القيام بذلك، كما هو مذكور في التطبيق.
- إذا كان لديك جهاز مفتوح المصدر، افتحه محطة المحاكي على هاتفك ومنحه حق الوصول إلى الجذر عن طريق الكتابة
su
. ثم أدخل هذا الأمر:pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS
- إذا لم يكن جهازك متجذرًا، فستحتاج إلى منح الإذن من خلال ADB. افتح موجه الأوامر/المحطة الطرفية على جهازك، ثم أدخل الأمر التالي:
adb shell pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS
بمجرد منح التطبيق هذا الإذن من خلال أي من الطريقتين المذكورتين أعلاه، فسيقوم التطبيق بإجراء اختبار التوافق. إذا لم يتغير شريط التنقل لديك، فهذا يعني أنك للأسف لم يحالفك الحظ. إذا تغير شريط التنقل الخاص بك ليعرض زر سهم لليمين، فتهانينا أن جهازك مدعوم! يمكننا الآن الانتقال إلى تعديل شريط التنقل الخاص بنا.
إعادة ترتيب أزرار شريط التنقل
طريقة التطبيق
الآن بعد أن قمت بإعداد التطبيق، أصبح من السهل جدًا إعادة ترتيب أزرار شريط التنقل. يجب أن تكون على الإصدار التجريبي من تطبيق Custom Navigation Bar لتتمكن من القيام بذلك، لذا ارجع وتأكد من أنك على القناة التجريبية قبل المتابعة.
إذا كنت تستخدم الإصدار التجريبي، فسترى قسمًا يسمى القرص التجريبي في قسم الإعدادات الرئيسية. اضغط على ذلك وسترى الخيارات التي تسمح لك باستبدال مفاتيح العودة والمنزل والمفاتيح الحديثة الموجودة. يمكنك بسهولة إعادة ترتيب مفاتيحك هنا عن طريق تغيير زر الرجوع إلى زر النظرة العامة (الأخير) وتغيير زر النظرة العامة (الأخير) إلى زر الرجوع. أو قم بتغييرها بأي طريقة تريدها، فلا توجد قيود حقيقية هنا. بعد تبديل المفاتيح، يمكنك أيضًا تجربة خيارات التخطيط في قائمة إعدادات شريط التنقل.
طريقة بنك التنمية الآسيوي
وإليك كيفية القيام بالشيء نفسه باستخدام أوامر ADB، إذا كنت تفضل ذلك. الأمر الذي سنقوم بتعديله هو تفضيل الإعداد الآمن المسمى sysui_nav_bar. هذا التفضيل عبارة عن سلسلة تحتوي على تخطيط شريط التنقل. الهيكل الافتراضي للتفضيل هو كما يلي
space, back; home; recent, space
حيث تمثل المساحة مساحة فارغة تفصل مفاتيح شريط التنقل عن بعضها البعض، وتمثل العودة والصفحة الرئيسية والأخيرة الأزرار الافتراضية الثلاثة في شريط التنقل. إذا أردنا تبديل المفتاح الخلفي والمفتاح الأخير، على سبيل المثال، فسنحتاج إلى تعديل السلسلة على النحو التالي
space, recent; home; back, space
ملاحظة: إذا كنت تحاول إدخال أي من الأوامر التالية من بيئة Shell ذات جذر مثل محاكي المحطة الطرفية على هاتفك، فسوف تحتاج إلى حذف "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"
ولكن يمكننا أيضًا تغيير أزرار شريط التنقل لتكون شيئًا مختلفًا تمامًا عن المفاتيح القياسية للرجوع أو الصفحة الرئيسية أو المفاتيح الحديثة، مثل إرسال أحد المفاتيح العديدة الأحداث الرئيسية. سنستفيد من هذه الحقيقة في القسم التالي، حيث نوضح لك كيفية تغيير الرموز الموجودة على أزرار شريط التنقل.
أيقونات شريط التنقل المخصصة
الآن، قد لا يبدو القسم التالي مهمًا جدًا نظرًا لوجوده عديدالتطبيقاتعلى متجر Play الذي يعد بتغيير شريط التنقل الخاص بك دون الحاجة إلى الجذر. وهي تعمل بالفعل - ومع ذلك، أبلغ العديد من المستخدمين أن هذه التطبيقات بها أخطاء في بعض التطبيقات مثل Chrome، أو عند تشغيل فيديو بملء الشاشة، أو بعض الألعاب. علاوة على ذلك، تتطلب العديد من هذه التطبيقات منك تمكين خدمة إمكانية الوصول لمراقبة التطبيقات لمعرفة متى يجب إعادة تلوين شريط التنقل، وهو ما قد يقلل من الأداء. أخيرًا، إذا كنت تعتمد على هذه التطبيقات لفترة طويلة جدًا، فقد تتفاجأ فجأة برؤيتها تتوقف عن العمل عند طرح Android O لأن إصدار Android التالي هو قتل قدرة هذه التطبيقات للرسم فوق عناصر واجهة مستخدم النظام.
تعتمد الطريقة التي نستخدمها على تطبيق Google لموالف شريط التنقل، لذا فهي لا تحتوي على أي من هذه المشكلات. ومع ذلك، هناك مشكلة واحدة حاليًا نريد أن نكون واضحين بشأنها: إذا اخترت اتباع هذه الطريقة لتعديل زر الصفحة الرئيسية، فسيتم لن يعمل إجراء الضغط لفترة طويلة على زر الصفحة الرئيسية مما يعني أنه لم يعد بإمكانك الوصول بسرعة إلى مساعد Google من زر الصفحة الرئيسية بعد الآن. إذا كنت موافقًا على ذلك، فإليك كيفية تغيير الرموز الموجودة على شريط التنقل.
أول شيء عليك القيام به هو تنزيل الرموز التي تريد استبدال رموز مفاتيح شريط التنقل الافتراضية بها. سأقدم لك روابط تنزيل لتتمكن من الحصول على أيقونات شريط التنقل في Google Pixel، ولكن الأمر متروك لك للعثور على الرموز الخاصة بك إذا كنت تريد أي شيء آخر. ستحتاج إلى الأيقونات بصيغة PNG، وبالنسبة للحجم، يمكنك تحديد حجم الأيقونات التي تحتاجها من خلال البحث في جهازك. مقاييس كثافة عرض الجهاز على Material.io وربط ذلك مع الرسم البياني المرجعي لحجم الرمز.
تذهب الاعتمادات الخاصة باستخراج أيقونات شريط التنقل في Google Pixel إلى XDA Senior Member داريومرك. تحميل هذا الأرشيف إذا كان لديك 1920x1080p عرض و هذا إذا كان لديك شاشة 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"
ما يفعله هذا الأمر هو استبدال المفاتيح الخلفية والمنزلية والحديثة بـ KeyEvents التي تقوم بنفس الوظيفة. على وجه الخصوص، يتم استبدال الظهر ب KEYCODE_BACK، يتم استبدال المنزل ب KEYCODE_HOME، وتم استبدال الأخيرة بـ KEYCODE_APP_SWITCH. تؤدي رموز المفاتيح هذه نفس الوظيفة تمامًا، ولكن نظرًا لأننا نستخدم KeyEvents، فيمكننا تحديد الرمز الذي نريد استخدامه لها. في هذه الحالة، نشير إلى back.png وhome.png وrecents.png التي حفظناها في /NavIcons.
ومع ذلك، من خلال استبدال مفاتيح الأسهم بـ KeyEvents، فإننا نفقد إمكانية الضغط لفترة طويلة على الصفحة الرئيسية لأنه لا توجد حاليًا طريقة للتعرف على أحداث الضغط لفترة طويلة للمدخلات الرئيسية التي تمت محاكاتها.
أدرك أنه في الوقت الحالي، قد لا تبدو هذه الطريقة مثالية أو سهلة التنفيذ، ولكن في وقت كتابة هذه السطور، لم يتم تحديث تطبيق Custom Navigation Bar لدعم إضافة الرموز الخاصة بك. في الوقت الحالي، طريقتي (وهي بالضبط الطريقة التي يعمل بها هذا التطبيق، وعندما يتم تحديث التطبيق، سيواجه نفس القيود) هي كيفية الحصول على أي رموز مخصصة تريدها على شريط التنقل الخاص بك.
هذا كل شيء لهذا البرنامج التعليمي. في البرامج التعليمية المستقبلية، سأعرض الاستخدامات العملية المحتملة لتغيير شريط التنقل الخاص بك، خاصة بطريقة سياقية باستخدام تطبيق أتمتة مثل تاسكر. اتبع ال فئة الدروس على XDA لمواكبة أحدث النصائح والحيل التي ننشرها.