Ένα σεμινάριο σχετικά με τον τρόπο αναπαραγωγής των λειτουργιών που βασίζονται στην τοποθεσία του Smart Lock της Google σε συσκευές Huawei ή Honor που διαθέτουν EMUI.
Εάν δεν είχατε ποτέ συσκευή Huawei ή Honor, τότε μάλλον κοιτάτε τον τίτλο και πηγαίνετε "εε;" Εξάλλου, το Smart Lock είναι ένα χαρακτηριστικό που εισήχθη ξανά Android 5.0 Lollipop για να διευκολύνετε τη γρήγορη πρόσβαση στη συσκευή σας υπό ορισμένες συνθήκες όπως η τοποθεσία, όταν συνδέεστε σε συγκεκριμένες συσκευές, ενώ βρίσκεστε στην τσέπη σας ή όταν αναγνωρίζετε τη φωνή σας.
Ένα τέτοιο χαρακτηριστικό συνήθως δεν αξίζει να συζητηθεί, δεδομένου ότι έχουν περάσει πάνω από δύο χρόνια από την κυκλοφορία του Lollipop και το γεγονός ότι περίπου το 65% όλων των συσκευών Android εκτελούνται σε Android 5.0+. Υποψιαζόμαστε ότι το ποσοστό των χρηστών στα φόρουμ μας που τρέχουν τουλάχιστον Lollipop είναι πολύ, πολύ υψηλότερο, αν και δεν έχουμε ακριβή στατιστικά στοιχεία για αυτό. Σε κάθε περίπτωση, η λειτουργία Smart Lock της Google έχει γίνει τόσο συνηθισμένη μεταξύ των συσκευών Android που εφαρμογές τρίτων που προσφέρουν αυτήν τη λειτουργία
έχουν σε μεγάλο βαθμό ήταν εγκαταλειμμένος, επειδή δεν βλέπουν το νόημα να ανταγωνίζονται το χαρακτηριστικό.Αλλά υπάρχει ένα σύνολο χρηστών που έχουν μείνει με ένα στειρωμένη έκδοση του Smart Lock: χρήστες με α Συσκευή Huawei ή Honor τρέχει το EMUI. Για οποιονδήποτε λόγο, το EMUI δεν παρέχει τις ίδιες λειτουργίες Smart Lock που προσφέρουν οι περισσότερες άλλες συσκευές Android 5.0+. Αντίθετα, το EMUI σάς επιτρέπει να ξεκλειδώνετε αυτόματα τη συσκευή σας μόνο εάν είναι συνδεδεμένη σε συγκεκριμένες συσκευές Bluetooth.
Αν και είναι σίγουρα χρήσιμο εάν διαθέτετε φορετό Bluetooth, όπως έξυπνο ρολόι ή ζώνη γυμναστικής, δεν έχουν όλοι μια φορητή συσκευή συνδεδεμένη πάντα στο smartphone τους. Η εξαίρεση από τη Huawei της λειτουργίας Smart Lock της Google είναι σαφώς σκόπιμη, επειδή ακόμα κι αν ενεργοποιήσετε το Smart Lock ως "έμπιστο πράκτορα" στο Android, δεν μπορείτε να χρησιμοποιήσετε πραγματικά τη δυνατότητα.
Βασικά, έχετε κολλήσει με τη λειτουργία "Smart" Lock της Huawei, η οποία προσφέρει λιγότερες δυνατότητες από το Smart Lock της Google. Οι μόνες επιλογές σας ως κάτοχος συσκευής Huawei/Honor είναι να δοκιμάσετε μία από τις πολλές επιλογές στο Play Store που ισχυρίζονται ότι προσθέτουν αυτήν τη δυνατότητα (καμία από τις οποίες δεν έχει λειτουργήσει ποτέ στη συσκευή μου) ή για root το τηλέφωνό σας και κατεβάστε μια ενότητα Xposed. Η έλλειψη αξιοπρεπών επιλογών για το EMUI με οδήγησε φυσικά να γράψω αυτό το σεμινάριο. Με λίγη μαγεία Tasker και ένα plug-in που ονομάζεται AutoTools, μπορούμε ξεκλειδώνει αυτόματα οποιαδήποτε συσκευή Huawei ή Honor με βάση την τοποθεσία χωρίς να χρειάζεται root.
Smart Lock για συσκευές Huawei/Honor
Υπάρχουν μόνο δύο εφαρμογές που απαιτούνται για να τεθεί σε λειτουργία αυτή η δυνατότητα. Το πρώτο είναι Tasker, το απίστευτα δημοφιλές εργαλείο αυτοματισμού Android που διαθέτουμε συχνά στο XDA για την επίλυση προβλημάτων που κυμαίνονται από τα πιο συνηθισμένα έως τα απίστευτα περίπλοκα. Στα 2,99 $, μπορεί να φαίνεται περιττό να αγοράσετε αυτήν την εφαρμογή για κάτι τόσο απλό, αλλά η αξία που μπορεί να προσφέρει αυτή η εφαρμογή είναι τεράστια, αν θέλετε παρακολουθήστε μερικά μαθήματα. Στη συνέχεια, θα χρειαστείτε την έκδοση beta μιας προσθήκης Tasker που είναι γνωστή ως AutoTools. Αυτή η προσθήκη προσθέτει έναν τόνο χρήσιμων λειτουργιών στην εγγενή εργαλειοθήκη του Tasker, και συγκεκριμένα θα χρειαστούμε μια λειτουργία των AutoTools γνωστή ως Secure Settings για να πετύχουμε τον στόχο μας.
Αυτό που θα κάνουμε είναι να τροποποιήσουμε μια ιδιότητα στη συσκευή μας που ελέγχει το χρονόμετρο που χρησιμοποιεί το Android για να καθορίσει πότε θα εμφανίζεται η οθόνη κλειδώματος μετά τη λήξη του χρονικού ορίου του τηλεφώνου. Το "time out" εδώ αναφέρεται είτε όταν η οθόνη του τηλεφώνου σας απενεργοποιείται μετά από X λεπτά αδράνειας είτε όταν ο χρήστης απενεργοποιεί χειροκίνητα την οθόνη πατώντας το κουμπί λειτουργίας. Μετά από ένα καθορισμένο χρονικό διάστημα (που κυμαίνεται από αμέσως μετά την είσοδο της συσκευής σε κατάσταση αναστολής λειτουργίας έως και 30 λεπτά μετά την είσοδο σε κατάσταση αναστολής λειτουργίας), το Android θα εμφανίσει την οθόνη κλειδώματος.
Το πρόβλημα με αυτές τις δύο λειτουργίες είναι ότι από προεπιλογή, η αύξηση του χρονοδιακόπτη "αυτόματου κλειδώματος" μπορεί ενδεχομένως να είναι ένα ζήτημα ασφαλείας, επειδή εάν Η συσκευή σας σύρεται εντός του χρονικού παραθύρου όπου η οθόνη κλειδώματος δεν έχει ακόμη ενεργοποιηθεί, ένας κλέφτης θα έχει πρόσβαση στο πλήρες περιεχόμενο του συσκευή. Για να μετριαστεί αυτό, το Android προσφέρει μια επιλογή "κουμπί λειτουργίας κλειδώνει άμεσα τη συσκευή", ώστε να μπορείτε να ενεργοποιήσετε αμέσως την οθόνη κλειδώματος πατώντας το κουμπί λειτουργίας. Ωστόσο, και ειδικά αν έχετε ορίσει ένα σύντομο χρονικό όριο οθόνης, είναι εύκολο να ξεχάσετε να το κάνετε αυτό, επομένως είστε έτοιμοι να έχετε τη συσκευή σας πρόσβαση από κακόβουλα τρίτα μέρη, εάν κατά λάθος αφήσετε το χρονικό όριο της συσκευής σε ένα τραπέζι ή στην τσέπη σας χωρίς να πατήσετε μη αυτόματα το ρεύμα κουμπί.
Ως εκ τούτου, η λύση μας σε αυτό το πρόβλημα είναι να δέσουμε ένα μεγαλύτερο χρονόμετρο "αυτόματου κλειδώματος" όχι στο κουμπί λειτουργίας, το οποίο απαιτεί χειροκίνητη παρέμβαση, αλλά αντί για τοποθεσία/WiFi. Με αυτόν τον τρόπο, μπορείτε να απολαύσετε τη χρήση της συσκευής σας χωρίς οθόνη κλειδώματος ενώ βρίσκεστε στην άνεση του σπιτιού σας, αλλά να είστε βέβαιοι ότι η καρφίτσα/κωδικός πρόσβασης της οθόνης κλειδώματος θα είναι πάντα ορατή ενώ βρίσκεστε μακριά από Σπίτι. Τώρα που εξηγήσαμε τι κάνουμε, δείτε πώς γίνεται στην πραγματικότητα.
Φροντιστήριο
Όπως αναφέρθηκε προηγουμένως, πρόκειται να τροποποιήσουμε μια συγκεκριμένη ιδιότητα συστήματος. Αυτή η ιδιότητα ορίζεται στο Ρυθμίσεις. Ασφαλής τάξη με το όνομα lock_screen_lock_after_timeout, και δέχεται ακέραιες τιμές σε χιλιοστά του δευτερολέπτου. Για να τροποποιήσουμε αυτήν την τιμή, θα χρειαστεί να εκχωρήσουμε στο AutoTools μια συγκεκριμένη άδεια ώστε να μπορεί να γράφει σε αυτές τις ρυθμίσεις χωρίς να χρειάζεται πρόσβαση root.
Σύμφωνα με το σύστημα διαχείρισης αδειών του Android, οι εφαρμογές ορίζουν τα δικαιώματα που θέλουν να εκχωρηθούν στο αρχείο Manifest. Στη συνέχεια, οι χρήστες μπορούν να χορηγήσουν ή να αρνηθούν δικαιώματα κατά την εγκατάσταση (προ-Marshmallow) ή κατά παραγγελία (Marshmallow+). Ωστόσο, υπάρχουν ορισμένα δικαιώματα που δεν μπορούν να παραχωρηθούν οι αιτήσεις ακόμη και αν το ζητήσουν στο Μανιφέστο, όπως π.χ. WRITE_SECURE_SETTINGS. Αυτό οφείλεται στο γεγονός ότι η εκχώρηση μιας τόσο ισχυρής άδειας σε οποιαδήποτε εφαρμογή θα έδινε σε αυτήν την εφαρμογή έναν τόνο ελέγχου της συσκευής σας.
Ωστόσο, υπάρχει ένας τρόπος αντιμετώπισης που μπορούμε να χρησιμοποιήσουμε για να εκχωρήσουμε την άδεια WRITE_SECURE_SETTINGS σε οποιαδήποτε εφαρμογή θέλουμε. Με τη χρήση ADB's διαχειριστής πακέτων (μ.μ.) εργαλείο, μπορούμε να εκχωρήσουμε σχεδόν οποιαδήποτε άδεια σε οποιαδήποτε εφαρμογή θέλουμε (υπό την προϋπόθεση ότι η εφαρμογή ζητά αυτήν την άδεια στο αρχείο Manifest).
Το πρώτο πράγμα που θα χρειαστεί να κάνετε είναι εγκαταστήστε το δυαδικό ADB στον υπολογιστή σας ακολουθούμενο από το σωστό πρόγραμμα οδήγησης για τη συσκευή σας. Στη συνέχεια, ενεργοποιήστε τον εντοπισμό σφαλμάτων USB στις Επιλογές προγραμματιστή (μεταβείτε στις Ρυθμίσεις --> Σχετικά με το τηλέφωνο και πατήστε τον Αριθμό έκδοσης 7 φορές, εάν δεν το έχετε κάνει ήδη) και συνδέστε το τηλέφωνό σας στον υπολογιστή σας. Τέλος, στείλτε την ακόλουθη εντολή μόλις ανοίξετε ένα τερματικό:
adb shell pm grant com.joaomgcd.autotools android.permission.WRITE_SECURE_SETTINGS
Τώρα το AutoTools θα έχει τη δυνατότητα να αλλάξει οποιαδήποτε ρύθμιση Καθολική, Ασφαλής ή Συστήματος στη συσκευή σας. Υπάρχουν διάφοροι τρόποι με τους οποίους μπορείτε να παίξετε με αυτές τις ρυθμίσεις και τη λίστα των διαθέσιμων ρυθμίσεων Κάθε κατηγορία εξαρτάται πλήρως από τη συσκευή και την κατασκευή λογισμικού, αλλά αυτή η συζήτηση αφορά μια άλλη χρόνος. Σε κάθε περίπτωση, θα συνεχίσουμε να σας δείξουμε πώς να χρησιμοποιείτε τα AutoTools για τον έλεγχο του χρονικού ορίου λήξης της οθόνης κλειδώματος.
Βήμα 2 - Ρύθμιση του Tasker
Ανοίξτε το Tasker και πατήστε το + εικονίδιο στην κάτω δεξιά γωνία για να δημιουργήσετε ένα νέο προφίλ. Ονομάστε το νέο σας προφίλ όπως "Αυτόματο κλείδωμα" ή ό, τι θέλετε, πραγματικά. Για τον τύπο του Context που θα χρησιμοποιήσουμε, επιλέξτε κατάσταση. Παω σε Net --> WiFi Connected. Εδώ, θα επιλέξουμε τα δίκτυα WiFi που θέλουμε να βάλουμε στη λευκή λίστα για αυτόματο ξεκλείδωμα της συσκευής. Χτύπα το μεγεθυντικός φακός και επιλέξτε όλα τα δίκτυα WiFi που θέλετε στη λευκή λίστα.
Προαιρετικός: Εάν θέλετε να δημιουργήσετε ένα Smart Lock που βασίζεται πραγματικά στην τοποθεσία (και όχι μόνο σε δίκτυα WiFi), τότε μπορείτε να χρησιμοποιήσετε το πλαίσιο "Τοποθεσία" στο Tasker αντί για την κατάσταση --> Net --> WiFi Connected χαρακτηριστικό. Σημειώστε ότι το Tasker δεν δημιουργεί γεωγραφικούς φράχτες, επομένως η αποστράγγιση της μπαταρίας θα είναι χειρότερη με αυτήν τη μέθοδο. Εάν θέλετε να έχετε το Tasker να αντιδρά σε γεωγραφικούς φράκτες με μεγαλύτερη απόδοση μπαταρίας, τότε θα πρέπει να εγκαταστήσετε το Αυτόματη τοποθεσία συνδέω.
Επιστρέψτε και στη συνέχεια θα σας ζητηθεί να δημιουργήσετε μια Εργασία. Εισαγάγετε οποιοδήποτε όνομα (ή κανένα δεν είναι εντάξει) για να μεταβείτε στην οθόνη δημιουργίας εργασιών. Πάτα το + εικονίδιο στην κάτω μέση για να προσθέσετε μια νέα ενέργεια. Παω σε Πρόσθετο --> Αυτόματα Εργαλεία --> Ασφαλείς ρυθμίσεις. Χτύπα το μολύβι για να ανοίξετε την οθόνη ρύθμισης παραμέτρων του AutoTools Secure Setting. Παω σε Κλείδωμα οθόνης --> Αυτόματο κλείδωμα και για την τιμή εισάγετε οποιαδήποτε αρκετά υψηλή τιμή όπως "9001'. Αυτή είναι η τιμή, σε δευτερόλεπτα, στην οποία το AutoTools θα ρυθμίσει το χρονόμετρο αυτόματης κλειδώματος οθόνης. Ευτυχώς για εμάς, δεν χρειάζεται να μπλέξουμε με τον μη αυτόματο ορισμό μιας εντολής για την τροποποίηση του τιμή lock_screen_lock_after_timeout, καθώς ο προγραμματιστής του AutoTools έχει εφαρμόσει αυτήν τη δυνατότητα για εμάς σε ένα ωραίο γραφικό περιβάλλον.
Αποθηκεύστε αυτήν τη ρύθμιση πατώντας το εικονίδιο με το σημάδι επιλογής επάνω, στη συνέχεια πατώντας το πλήκτρο επιστροφής μια φορά πίσω στο Tasker και, τέλος, βγαίνοντας από την οθόνη δημιουργίας εργασιών. Μόλις το κάνετε αυτό, το Tasker θα κρατήσει πλέον αυτόματα τη συσκευή σας ξεκλείδωτη για πολύ μεγάλο χρονικό διάστημα όσο βρίσκεστε στο σπίτι. Σιγουρέψου ότι "κουμπί λειτουργίας κλειδώνει αμέσως τη συσκευή" είναι άτομα με ειδικές ανάγκες στις ρυθμίσεις ασφαλούς κλειδώματος, διαφορετικά όταν πατήσετε το κουμπί λειτουργίας ενώ βρίσκεστε στο σπίτι, θα ενεργοποιηθεί η οθόνη κλειδώματος του τηλεφώνου σας, κάτι που δεν είναι αυτό που θέλετε!
Τέλος, θα χρειαστεί να προσθέσουμε μια άλλη Εργασία που ενεργοποιείται όταν εγκαταλείπουμε κάποιο από τα δίκτυα WiFi στη λευκή λίστα. Στην κεντρική σελίδα του Tasker, παρατεταμένο πάτημα στο Εργο μόλις δημιουργήσατε και πατήστε προσθήκη εργασίας εξόδου στο αναδυόμενο μενού. Ονομάστε αυτό το Task οτιδήποτε και μπείτε ξανά στην οθόνη δημιουργίας Task. Εδώ, πατήστε στο + εικονίδιο και πάλι μεταβείτε στο Πρόσθετο --> Αυτόματα Εργαλεία --> Ασφαλείς ρυθμίσεις. Στην ίδια επιλογή Automatic Lock, αυτή τη φορά εισαγάγετε μια τιμή του 0. Μόλις αποχωρήσετε από το δίκτυο WiFi σας, το Tasker δεν θα καθυστερεί πλέον την εμφάνιση της οθόνης κλειδώματος μετά τη λήξη του χρόνου του τηλεφώνου.
Προαιρετικός: Προσθέστε μια δεύτερη ενέργεια πατώντας το + εικονίδιο αλλά αυτή τη φορά πηγαίνετε στο Οθόνη --> Κλείδωμα συστήματος. Αυτή η ενέργεια θα κλειδώσει αυτόματα το τηλέφωνό σας όταν βγείτε από την εμβέλεια των δικτύων Wi-Fi στη λίστα λευκών, σε περίπτωση που έχετε πολύ μεγάλο χρονικό όριο οθόνης και το τηλέφωνό σας δεν κοιμάται ποτέ όταν φεύγετε από το σπίτι. Εάν το κάνετε αυτό, θα πρέπει να κάνετε το Tasker διαχειριστή συσκευής μεταβαίνοντας στις Ρυθμίσεις. Απλώς αναζητήστε την επιλογή και παραχωρήστε την άδεια στην Tasker.
Και τέλος! Αν και αυτό το σεμινάριο φαίνεται μεγάλο, στην πραγματικότητα το ίδιο το σενάριο Tasker είναι πολύ απλό. Απαιτούνται συνολικά έως και 3 Ενέργειες για την ενεργοποίηση αυτής της δυνατότητας. Δώστε μια ευκαιρία και πείτε μας πώς λειτουργεί για εσάς!