Διόρθωση εστίασης ήχου για Pokemon Go (και άλλες εφαρμογές) χωρίς Root

Ένα σεμινάριο για να σταματήσετε το Pokemon Go (και άλλες εφαρμογές) να κλέβουν την εστίαση ήχου χωρίς root. Αποτρέπει τη διακοπή της αναπαραγωγής της Μουσικής Play Music, του Spotify και του PocketCast!

Παρά τη μείωση της δημοτικότητας, Pokemon Go έχει ακόμα ένα τόνος οπαδών παίζοντας το παιχνίδι κάθε μέρα. Αν και τα περισσότερα από τα θέματα του παιχνιδιού ήταν σχετίζονται με την εξαπάτηση, υπάρχουν και άλλα, πιο δευτερεύοντα που ενοχλούν τους υπάρχοντες χρήστες. Ένα τέτοιο ζήτημα σχετίζεται με την εστίαση ήχου στο Android. Οι χρήστες που τους αρέσει να ακούν μουσική ή podcast όταν παίζουν Pokemon Go διαπιστώνουν ότι η αναπαραγωγή ήχου σταματά αμέσως όταν ξεκινούν το παιχνίδι. Αυτό απαιτεί από τους χρήστες να επανεκκινήσουν μη αυτόματα την αναπαραγωγή στην αγαπημένη τους εφαρμογή πολυμέσων, όπως η Μουσική Google Play, το Spotify ή το PocketCasts. Σήμερα, θα σας δείξω πώς να σταματήσετε το Pokemon Go (ή οποιαδήποτε άλλη εφαρμογή) από το να κλέβει τη μόνιμη εστίαση ήχου - χωρίς ρίζα.

Αυτό που συμβαίνει όταν εκτοξεύεται το Pokemon Go είναι ότι ζητά εστίαση ήχου από το σύστημα, πράγμα που σημαίνει ότι οποιαδήποτε υπάρχουσα αναπαραγωγή πολυμέσων μέσω της ίδιας ροής έντασης θα είναι

πάπια. Το ζήτημα εδώ είναι ότι η εστίαση ήχου του Android βασίζεται σε ένα σύστημα τιμής μεταξύ των εφαρμογών. Το Android δεν επιλέγει και δεν επιλέγει ποιες εφαρμογές θα πρέπει να έχουν προτεραιότητα για να διατηρήσουν την εστίαση, αντίθετα βασίζεται σε εφαρμογές που ζητούν και απελευθερώνουν την εστίαση όπως απαιτείται. Έτσι, επειδή το Pokemon Go ζητά ηχητική εστίαση κατά την εκκίνηση, άλλες εφαρμογές δεν μπορούν να το εμποδίσουν να αναλάβει την ένταση του πολυμέσου.

Ορισμένες εφαρμογές όπως π.χ Poweramp ή Podcast Addict έχουν πειραματικές ρυθμίσεις για να διατηρήσουν την εστίαση ήχου για να αποτρέψουν άλλες εφαρμογές από το να το κλέψουν, αλλά προφανώς πολλές εφαρμογές πολυμέσων εκεί έξω δεν το κάνουν. Ορισμένοι χρήστες έχουν βρει τον δικό τους τρόπο για να διατηρήσουν την εστίαση του ήχου μέσω της χρήσης του Tasker προφίλ, κάτι που πιθανότατα θα είχα δοκιμάσει αν δεν υπήρχε καλύτερος τρόπος - αλλά ευτυχώς υπάρχει. Περιλαμβάνει τη χρήση μιας κρυφής εντολής ADB για πρόσβαση στη διεπαφή γραμμής εντολών για το σύστημα διαχείρισης αδειών του Android που είναι γνωστό ως appops. Με μία μόνο εντολή, μπορείτε να σταματήσετε το Pokemon Go (ή οποιαδήποτε άλλη εφαρμογή) να εστιάζει ξανά στον ήχο!

Η μέθοδος που χρησιμοποιούμε εδώ απευθύνεται σε στοκ, μη ριζωμένους χρήστες που δεν εκτελούν κανένα είδος προσαρμοσμένης ROM. Οι χρήστες προσαρμοσμένης ROM, όπως αυτοί στο LineageOS, ενδέχεται να έχουν πρόσβαση σε μια πιο ισχυρή μέθοδο ελέγχου δικαιωμάτων που τους επιτρέπει να παρακάμψουν την ανάγκη για αυτήν την εντολή.


Σταματήστε το Pokemon Go από τη λήψη ακουστικής εστίασης - Οδηγός

  1. Κατεβάστε και εγκαταστήστε τα προγράμματα οδήγησης USB για σας συσκευή - πιθανότατα απαραίτητο μόνο εάν χρησιμοποιείτε Windows.
  2. Κατεβάστε το Δυαδικό ADB για το λειτουργικό σας σύστημα και εξαγάγετε το αρχείο σε οποιονδήποτε φάκελο στον υπολογιστή σας.
  3. Στο τηλέφωνό σας, ανοίξτε τις Ρυθμίσεις και, στη συνέχεια, βρείτε την επιλογή "Σχετικά με το τηλέφωνο".
  4. Κάντε κύλιση προς τα κάτω για να βρείτε την τιμή "Build Number" και πατήστε την 7 φορές, ενεργοποιώντας τη Λειτουργία προγραμματιστή.
  5. Επιστρέψτε στο κύριο μενού στις Ρυθμίσεις, πληκτρολογήστε Επιλογές προγραμματιστή.
  6. Ενεργοποιήστε τη λειτουργία εντοπισμού σφαλμάτων USB εδώ, όπως φαίνεται παρακάτω.
  7. Συνδέστε το τηλέφωνό σας στον υπολογιστή σας και στο τηλέφωνό σας αλλάξτε τη λειτουργία USB από τη λειτουργία «μόνο φόρτιση» σε λειτουργία «μεταφορά αρχείων (MTP)».
  8. Επιστρέψτε στον υπολογιστή, μεταβείτε στο σημείο όπου εξαγάξατε το δυαδικό ADB.
  9. Ανοίξτε μια γραμμή εντολών σε αυτόν τον κατάλογο ADB. Στα Windows, ο ευκολότερος τρόπος για να το κάνετε αυτό είναι να πατήσετε Shift+Δεξί κλικ. Στο μενού περιβάλλοντος, επιλέξτε την επιλογή «άνοιγμα παραθύρου εντολών εδώ». Χρήστες Mac ή Linux, ανοίξτε ένα τερματικό.
  10. Εισαγάγετε την ακόλουθη εντολή: adb devices
  11. Αυτό θα ξεκινήσει τον δαίμονα ADB. Εάν αυτή είναι η πρώτη φορά που εκτελείτε το ADB, θα δείτε ένα μήνυμα που σας ζητά να εξουσιοδοτήσετε μια σύνδεση. Επίτρεψέ το.
  12. Εκτελέστε ξανά την εντολή από το βήμα 10 και θα δείτε τον σειριακό αριθμό της συσκευής σας στην έξοδο. Αν ναι, προχωρήστε στο επόμενο βήμα. Εάν όχι, εγκαταστήστε ξανά τα προγράμματα οδήγησης.
  13. (Προαιρετικός): εάν θέλετε να περιορίσετε μια εφαρμογή εκτός του Pokemon Go να έχει εστίαση ήχου, εγκαταστήστε το Επιθεωρητής εφαρμογών εφαρμογή και βρείτε το πακέτο που αναφέρεται κάτω από το όνομα της εφαρμογής.
  14. Στείλτε την παρακάτω εντολή: adb shell
  15. Στη συνέχεια, εκτελέστε αυτήν την εντολή: cmd appops set TAKE_AUDIO_FOCUS ignore. Έτσι, για παράδειγμα, για το Pokemon Go η εντολή θα ήταν: cmd appops set com.nianticlabs.pokemongo TAKE_AUDIO_FOCUS ignore
    Παράδειγμα: Εντολή που χρησιμοποιείται για το Pokemon Go

    Ενημέρωση: εάν η παραπάνω εντολή δεν λειτουργεί για εσάς, δοκιμάστε να εξαιρέσετε το "cmd" από την εντολή. Έχω ακούσει ότι αυτό μπορεί να είναι απαραίτητο εάν χρησιμοποιείτε Android 6.0 Marshmallow ή παλαιότερη έκδοση.

  16. Εφόσον δεν λαμβάνετε μήνυμα σφάλματος στο παράθυρο, θα έπρεπε να έχει λειτουργήσει. Συγχαρητήρια! Τώρα το Pokemon Go δεν θα εμποδίσει τη Μουσική Google Play, το Spotify, το PocketCasts ή οποιαδήποτε άλλη εφαρμογή να παίζει πάνω από αυτό!

Εξήγηση

Όπως αναφέρθηκε στην αρχή, χρησιμοποιούμε τη γραμμή εντολών για τη διασύνδεση με τις εφαρμογές, που είναι το σύστημα του Android που αντιμετωπίζει ο χρήστης για το χειρισμό των αδειών εφαρμογών. Από προεπιλογή, υπάρχουν μόνο λίγα δικαιώματα που οι χρήστες μπορούν να αλλάξουν μέσω της διεπαφής χρήστη ρυθμίσεων. Ορισμένες προσαρμοσμένες ROM (όπως το LineageOS με το Privacy Guard) εκθέτουν περισσότερα δικαιώματα που μπορείτε να περιορίσετε, αλλά για τους μη ριζωμένους χρήστες ο μόνος τρόπος χειρισμού αυτών των δικαιωμάτων είναι μέσω της γραμμής εντολών.

Τέλος πάντων, η συγκεκριμένη άδεια που περιορίζουμε είναι android.permission.TAKE_AUDIO_FOCUS που κάθε αίτηση που το ζητήσει σε τους AndroidManifest.xml Το αρχείο χορηγείται αυτόματα κατά την εγκατάσταση. Χάρη στην παραπάνω εντολή appops, μπορούμε να αφαιρέσουμε αυτήν την άδεια από το Pokemon Go, που σημαίνει ότι δεν μπορεί ζητήστε μεγαλύτερη εστίαση ήχου και, επομένως, δεν μπορείτε πλέον να σταματήσετε άλλες εφαρμογές μουσικής ή podcast στο τηλέφωνό σας παιχνίδι.

Αν και το παραπάνω σεμινάριο απευθύνεται σε χρήστες του Pokemon Go, τεχνικά μπορείτε να κάνετε το ίδιο πράγμα για οποιαδήποτε άλλη εφαρμογή. Απλώς τροποποιήστε το όνομα του πακέτου στο βήμα #15 με όποια άλλη εφαρμογή θέλετε. Απλώς προσέξτε να μην περιορίσετε αυτήν την άδεια ούτως ή άλλως, επειδή η Google απέκρυψε σκόπιμα αυτήν την άδεια από τον περιορισμό, ώστε οι χρήστες να μην μπλέξουν τα πράγματα.

Δείτε άλλα υπέροχα σεμινάρια όπως αυτό στο δικό μας κατηγορία φροντιστηρίων. Μείνετε ενημερωμένοι για τα τελευταία νέα με την εφαρμογή XDA Labs.