Ένα σεμινάριο σχετικά με τον τρόπο προσθήκης προσαρμοσμένου κουμπιού στη γραμμή πλοήγησης στο Samsung Galaxy S8 ή το Samsung Galaxy S8+. Δεν απαιτεί πρόσβαση root.
Τα Galaxy S8 και Galaxy S8+ της Samsung είναι δύο από τα πιο καυτά smartphone της αγοράς, κυρίως χάρη στα μεγάλα βήματα που έκανε η Samsung με την τεχνολογία της οθόνης τους. Δεδομένου ότι η Samsung είχε στόχο να μειώσει όσο το δυνατόν περισσότερο τα bezels με τις νέες κορυφαίες συσκευές της, η εταιρεία έχει επιτέλους απαλλαγεί από τα χωρητικά πλήκτρα που κάποτε ήταν βασικά στοιχεία του υλικού Samsung. Στη θέση του υπάρχουν πλήκτρα πλοήγησης λογισμικού, τα οποία μπορούν να τροποποιηθούν σε κάποιο βαθμό μέσα στο Samsung Experience UI.
Ως συνήθως, ωστόσο, η εφαρμογή στοκ του δέκτη της γραμμής πλοήγησης υστερεί αρκετά ως προς την προσαρμοστικότητά του. Οι περισσότερες από τις προσαρμογές επικεντρώνονται γύρω από το κουμπί αρχικής οθόνης - μπορείτε να αλλάξετε την ευαισθησία και το αν ξεκλειδώνει απευθείας το τηλέφωνο ή όχι. Ενώ υπάρχει η επιλογή αλλαγής της διάταξης των κουμπιών, η μόνη διάταξη στην οποία μπορείτε να μεταβείτε είναι μια ανεστραμμένη διάταξη όπου ανατρέπονται το πίσω μέρος και το πλήκτρο πρόσφατων.
Εμείς στην XDA-Developers κοιτάμε πάντα πέρα από αυτά που προσφέρει ο κατασκευαστής, προκειμένου να βρούμε περισσότερους τρόπους προσαρμογής του τηλεφώνου σας. Γι' αυτό σήμερα παρουσιάζουμε μια μέθοδο προσθέστε επιπλέον κουμπιά στη γραμμή πλοήγησης στα Samsung Galaxy S8 και S8+.
Εάν παρακολουθείτε το XDA Portal (όπως θα έπρεπε), ίσως έχετε δει την ανάρτησή μου τον περασμένο μήνα σχετικά με το πώς Η προσαρμογή της γραμμής πλοήγησης θα μπορούσε να πραγματοποιηθεί στο Android 7.X συσκευές χωρίς να απαιτούνται mod UI συστήματος, προσαρμοσμένες ROM ή πρόσβαση root οποιουδήποτε είδους. Η μέθοδος περιλαμβάνει την άμεση τροποποίηση των ρυθμίσεων που είναι υπεύθυνες για τον συντονισμό της γραμμής πλοήγησης, παρόλο που το GUI για την τροποποίηση της γραμμής πλοήγησης έχει κρυφτεί από το χρήστη. Αυτό συμβαίνει επειδή ο κώδικας που αποτελεί τον δέκτη της κρυφής γραμμής πλοήγησης βρίσκεται στα αποθετήρια Android Open Source Project (AOSP) από το Android Nougat, αλλά δεν ήταν μέχρι το Android O ότι η Google εξέθεσε αυτήν τη δραστηριότητα στο πλαίσιο του Δέκτη διεπαφής χρήστη συστήματος. Ωστόσο, εφόσον το λογισμικό που αποστέλλεται στη συσκευή σας με Android Nougat δεν έχει αφαιρέσει εντελώς τον κωδικό πίσω από τον δέκτη της γραμμής πλοήγησης, είναι δυνατή η χρήση αυτής της λειτουργίας χωρίς αναμονή.
Η τροποποίηση της γραμμής πλοήγησης περιλαμβάνει την αποστολή εντολών φλοιού είτε μέσω ADB είτε μέσω μιας εφαρμογής στην οποία έχει εκχωρηθεί η άδεια WRITE_SECURE_SETTINGS. Λόγω του γεγονότος ότι το μπέρδεμα με το ADB είναι κάτι με το οποίο πολλοί άνθρωποι δεν γνωρίζουν, το XDA Senior Member paphonb ανέπτυξε μια εφαρμογή που ονομάζεται Προσαρμοσμένη γραμμή πλοήγησης για να σας διευκολύνουν όλα.
Καθώς χιλιάδες άνθρωποι άρχισαν να δοκιμάζουν την εφαρμογή του, πολλοί χρήστες στο Galaxy S8 και στο Galaxy S8+ άρχισαν να αντιμετωπίζουν συχνά σφάλματα διεπαφής χρήστη συστήματος όταν προσπαθούσαν να χρησιμοποιήσουν την εφαρμογή. Εμείς έτσι υποτίθεται ότι η τροποποίηση της γραμμής πλοήγησης πέρα από την υλοποίηση της Samsung ήταν αδύνατη - αλλά αυτή η υπόθεση βρέθηκε από τότε λανθασμένη. Δείτε πώς να το κάνετε ακριβώς αυτό.
Προσθήκη προσαρμοσμένων κουμπιών στη γραμμή πλοήγησης στο Galaxy S8 ή S8+
Μετά από κάποιες αρχικές δοκιμές, ανακαλύψαμε ότι κάναμε τις ίδιες εντολές φλοιού στέλνοντας το αρχικό μου σεμινάριο εργάζονται επίσης για τα Galaxy S8 και S8+, αλλά με μια σημαντική προειδοποίηση. Τα αρχικά πλήκτρα επιστροφής, αρχικής σελίδας, πρόσφατου και εναλλαγής IME ΠΡΕΠΕΙ να είναι παρών ανεξάρτητα από τη διάταξη που χρησιμοποιείτε. Εάν λείπει κάποιο από αυτά τα κλειδιά, η διεπαφή χρήστη συστήματος θα αρχίσει να διακόπτεται επανειλημμένα. Επιπλέον, οποιοδήποτε πλήκτρο που προσθέτετε στη γραμμή πλοήγησης θα φαίνεται λίγο περίεργο όταν η γραμμή πλοήγησης της Samsung αλλάζει αυτόματα τα χρώματα σε λευκό φόντο, αλλά ψάχνω τρόπους να αντιμετωπίσω αυτό το δευτερεύον ενόχληση.
Τέλος πάντων, αφήστε μας να βουτήξουμε στις εντολές που θα χρειαστεί να μάθετε για να τροποποιήσετε τη γραμμή πλοήγησης στη συσκευή σας Samsung Galaxy. Το πρώτο πράγμα που πρέπει να κάνετε είναι να ρυθμίσετε το ADB στον υπολογιστή σας.
Ρύθμιση ADB
Πρώτα, κατεβάστε το δυαδικό ADB απευθείας από την Google για το συγκεκριμένο λειτουργικό σας σύστημα και εξαγάγετε το σε ξεχωριστό κατάλογο στον υπολογιστή σας. Επόμενο, εγκαταστήστε το σωστό πρόγραμμα οδήγησης για το τηλέφωνό σας Samsung. Στη συνέχεια, ενεργοποιήστε το "USB Debugging" στις Ρυθμίσεις --> Επιλογές προγραμματιστή. Εάν δεν βλέπετε τις Επιλογές προγραμματιστή, τότε θα πρέπει να τις ενεργοποιήσετε μεταβαίνοντας στις Ρυθμίσεις --> Σχετικά με το τηλέφωνο και, στη συνέχεια, πατώντας στον Αριθμό έκδοσης 7 φορές. Τέλος, βεβαιωθείτε ότι το ADB λειτουργεί ξεκινώντας μια γραμμή εντολών στον ίδιο κατάλογο με το δυαδικό ADB (κρατήστε πατημένο το shift + δεξί κλικ --> "άνοιξε τη γραμμή εντολών εδώ") και εκτελέστε την ακόλουθη εντολή:
adb devices
Αν δείτε τον σειριακό αριθμό της συσκευής σας (και δεν λέει μη εξουσιοδοτημένο), είστε χρυσός. Εάν δείτε ένα αναδυόμενο παράθυρο στο τηλέφωνό σας που σας ζητά να παραχωρήσετε στον υπολογιστή σας πρόσβαση ADB, τότε πείτε ναι. Εάν δεν βλέπετε να συμβαίνει κανένα από τα δύο, δοκιμάστε να επανεκκινήσετε τον υπολογιστή/τηλέφωνό σας και να το συνδέσετε ξανά στον υπολογιστή σας. Διαφορετικά, δοκιμάστε να εγκαταστήσετε ξανά το πρόγραμμα οδήγησης.
Τροποποίηση της γραμμής πλοήγησης - Μέθοδος ADB
Η σύνταξη για την τροποποίηση της γραμμής πλοήγησης είναι η εξής:
settings put secure sysui_nav_bar "key(KEYCODE_CONSTANT: file:///path/to/icon.png),back; home; recent, menu_ime"
όπου KEYCODE_CONSTANT αναφέρεται στη σταθερά του a KeyEvent και η διαδρομή εικονιδίου είναι το URI του αρχείου που σας επιτρέπει να καθορίσετε ένα προσαρμοσμένο εικονίδιο για προσθήκη στη γραμμή πλοήγησης. Διαπίστωσα ότι τα εικονίδια μεγέθους 64x64 λειτουργούν αρκετά καλά για τους σκοπούς μας. Μπορείτε να κατεβάσετε πολλά δωρεάν εικονίδια από το IconsDB δικτυακός τόπος.
Για παράδειγμα, η εντολή που έστειλα για να προσθέσω ένα κλειδί στη γραμμή πλοήγησης που εκκινεί την εφαρμογή Gmail είναι η εξής:
settings put secure sysui_nav_bar "key(65:file:///storage/emulated/0/NavIcons/gmail.png),back; home; recent, menu_ime"
Εφόσον πρέπει οπωσδήποτε να έχουμε το back, το home, το πρόσφατα και το menu_ime κάπου στην εντολή, αυτό σημαίνει ότι δυστυχώς δεν μπορούμε να αντικαταστήσουμε αυτά τα stock κλειδιά, ώστε να μπορούμε να χρησιμοποιήσουμε τα δικά μας προσαρμοσμένα εικονίδια γραμμής πλοήγησης. Αλλά τουλάχιστον, μπορούμε να παίξουμε με τα κενά για να μπορέσουμε να χωρέσουμε περισσότερα προσαρμοσμένα πλήκτρα ή απλώς να έχουμε τη διάταξη που θα προτιμούσαμε. Για παράδειγμα:
settingsputsecuresysui_nav_bar "space[#],back[#];home[#];recent[#],menu_ime[#]"
Η τιμή σε αγκύλες είναι ένας σχετικός πολλαπλασιαστής μεγέθους, που σας επιτρέπει να συρρικνώσετε ή να επεκτείνετε το πλάτος του κουμπιού. Σημειώστε ότι οι τυπικές τιμές για τον πολλαπλασιαστή σχετικού μεγέθους θα πρέπει να παραμείνουν μεταξύ 0,85-1,15, διαφορετικά τα κουμπιά θα αρχίσουν να καταλαμβάνουν πολύ μικρό ή πολύ μεγάλο πλάτος για να μπορούν πραγματικά να χρησιμοποιηθούν. Μην προσπαθήσετε να βάλετε "0" για το σχετικό μέγεθος σε μια προσπάθεια να αποκρύψετε το πλήκτρο της γραμμής πλοήγησης - απλώς θα καταλήξετε να κολλήσετε τη διεπαφή χρήστη συστήματος.
Σε περίπτωση που μπερδευτείτε με κάτι και καταλήξετε με σφάλματα διεπαφής περιβάλλοντος συστήματος, μπορείτε να επιστρέψετε στην προεπιλεγμένη διάταξη της γραμμής πλοήγησης εισάγοντας μία από τις ακόλουθες δύο εντολές:
settings put secure sysui_nav_bar "space, back; home; recent, menu_ime"
settings delete secure sysui_nav_bar
Ως υπενθύμιση μερικών από τα τρελά πράγματα που μπορείτε να κάνετε με τον κρυφό δέκτη της γραμμής πλοήγησης Android Nougat, ακολουθεί ένα στιγμιότυπο οθόνης μιας διάταξης γραμμής πλοήγησης που έφτιαξε ένας από τους αναγνώστες μας για γέλια.
Τροποποίηση της γραμμής πλοήγησης - Μέθοδος εφαρμογής
Είμαι βέβαιος ότι αυτό είναι το κομμάτι που ενδιαφέρει πραγματικά τους περισσότερους από εσάς. Ανώτερο μέλος του XDA paphonb'μικρό Προσαρμοσμένη γραμμή πλοήγησης η εφαρμογή θα τα έκανε όλα αυτά πιο εύκολα. Ο προγραμματιστής ανακάλυψε πρόσφατα πώς να υποκλέψει ορισμένα KeyEvents που καλούν συγκεκριμένες εφαρμογές - υπάρχουν έως και 5 KeyEvents που κατάλαβε πώς να υποκλαπούν συνολικά. Η ακριβής εξήγηση του τρόπου λειτουργίας του δεν είναι απαραίτητη εδώ, επομένως δεν θα μπούμε σε περισσότερες λεπτομέρειες. Έχοντας αυτό κατά νου, ο προγραμματιστής μπόρεσε να ενημερώσει την εφαρμογή (ξεκινώντας από την έκδοση 0.5.0) ώστε να μπορείτε να ουσιαστικά εκτελέστε όποια ενέργεια θέλετε.
Για παράδειγμα, ο προγραμματιστής πρόσθεσε πρόσφατα τη δυνατότητα προσθήκης μιας ενέργειας που κατεβάζει τη γραμμή κατάστασης, εκκινήστε απευθείας μια εφαρμογή της επιλογής σας, και το πιο σημαντικό να ενεργοποιήσετε α Εκδήλωση Tasker. Ειδικά η λειτουργία συμβάντος Tasker είναι το πιο εκπληκτικό μέρος, επειδή μέσω του Tasker ο αριθμός των ενεργειών που μπορείτε να εκτελέσετε είναι απεριόριστος. Εάν θέλετε το κουμπί της γραμμής πλοήγησης να κάνει κάτι, μπορεί να το κάνει. Συνδυάστε το με την ήδη υπάρχουσα ενσωμάτωση του Tasker Profile και μπορείτε να τροποποιήσετε με βάση τα συμφραζόμενα τη γραμμή πλοήγησης στη συσκευή σας για να προσθέσετε συγκεκριμένα κλειδιά μόνο υπό συνθήκες της επιλογής σας.
Για να χρησιμοποιήσετε αυτές τις ειδικές δυνατότητες της εφαρμογής, θα πρέπει να πληρώσετε 1,99 $ για να κάνετε αναβάθμιση στην επαγγελματική έκδοση της εφαρμογής. Προς το παρόν, για να χρησιμοποιήσετε την εφαρμογή στο Samsung Galaxy S8/S8+, πρέπει να είστε στην πιο πρόσφατη έκδοση beta (0.7.0). Η εφαρμογή θα εντοπίσει αυτόματα εάν χρησιμοποιείτε Galaxy S8/S8+ και θα απενεργοποιήσει ορισμένες λειτουργίες που θα προκαλέσουν τη λειτουργία της συσκευής σας να αρχίσει να κολλάει.
Ο προγραμματιστής μου είπε ότι εξακολουθεί να εργάζεται για να ετοιμάσει την εφαρμογή για σταθερή κυκλοφορία για χρήστες σε αυτά τα τηλέφωνα Samsung. Αυτή τη στιγμή, θα το έκανα περιμένετε μερικές ημέρες μέχρι ο προγραμματιστής να ενημερώσει την εφαρμογή του έτσι θα έχετε έναν εύκολο τρόπο να τροποποιήσετε τη γραμμή πλοήγησης χωρίς να χρειάζεται να χρησιμοποιήσετε εντολές ADB. Ο προγραμματιστής ενημερώνει γρήγορα την εφαρμογή του - αφού η εφαρμογή κυκλοφόρησε λιγότερο από ένα μήνα πριν, έχει ήδη δει πολλές προσθήκες λειτουργιών.
συμπέρασμα
Αν όμως είστε αρκετά τολμηροί, μπορείτε να παίξετε με τον δέκτη της κρυφής γραμμής πλοήγησης ήδη χρησιμοποιώντας τη σύνταξη που έδειξα νωρίτερα. Οι περισσότεροι άνθρωποι πιθανότατα θα περιμένουν να ενημερωθεί η εφαρμογή προσαρμοσμένης γραμμής πλοήγησης - Ήθελα απλώς να μάθω αυτά τα νέα, ώστε όλοι οι φίλοι μας στο Galaxy S8/S8+ να ξέρουν τι να περιμένουν. Θα συνεχίσω να δημοσιεύω σεμινάρια σχετικά με τον δέκτη της γραμμής πλοήγησης, με το επόμενο να επικεντρώνεται στον τρόπο προσθήκης διπλών/τρικ κλικ στα κουμπιά της γραμμής πλοήγησης.
Υποστηρίξτε τους XDA-Developers με όποιον τρόπο μπορείτε! Πρόσφατα ανακαλύψαμε ότι υπήρχαν πολλά ιστολόγια που κόπηκαν, αντιγράψαμε, επικολλούσαν τα αρχικά μας σεμινάρια και άλλο περιεχόμενο που μοιράζονταν οι χρήστες μας στα φόρουμ. Αυτά τα ιστολόγια προσπαθούν να πάρουν τα εύσημα για την τεράστια προσπάθεια που κάνουμε για τη συλλογή αυτών των σεμιναρίων αντί να παρέχουμε από μόνα τους ποιοτικό περιεχόμενο. Δεν θα βρείτε σεμινάρια όπως αυτά που έχουμε γράψει στο δικό μας κατηγορία φροντιστηρίων ή σεμινάρια από τα φόρουμ μας οπουδήποτε αλλού.
Ακολουθήστε μας στο Κελάδημα, Google+, Facebook, ή YouTube. Ρίξτε μια ματιά στο δικό μας XDA Labs εφαρμογή για έναν γρήγορο τρόπο περιήγησης στα φόρουμ μας (και σκεφτείτε να το αποκτήσετε XDA Χωρίς διαφημίσεις επίσης!) στην κινητή συσκευή σας! Ευχαριστούμε και μείνετε συντονισμένοι για το επόμενο σεμινάριο μας!