Revocare le autorizzazioni dell'app senza root?


8

Ho alcune app che richiedono autorizzazioni non necessarie. Vorrei revocare questi, ma ho letto che ciò non è possibile senza il rooting.

C'è un modo per farlo senza dover eseguire il root?

Risposte:


9

Sì, c'è, anche se non è davvero elegante ed è davvero una cattiva idea farlo.
L'app a cui lo fai, si romperà molto probabilmente se hai revocato un'autorizzazione e prova a usarla. Se ciò non bastasse, perderai i dati della tua app e non sarai in grado di aggiornare dal Play Store. Detto questo, non è così difficile da fare.

Hai bisogno di apktool . Fai riferimento a questa guida su come usarlo (avrai bisogno dei comandi di decompilazione e compilazione.) E questo su come firmare l'apk dopo aver finito. Devi modificare il AndroidManifest.xmlfile. Cerca linee come questa:

<uses-permission android:name="android.permission.CAMERA" />

e rimuovilo se ti dà fastidio.

Al termine, ricompila l'app anziché firmarla. Ora puoi disinstallare l'app originale e installare quella nuova usando un file manager o in adb usando

adb install /local/path

Per scoprire cosa consente ogni autorizzazione, puoi fare riferimento alla documentazione incompleta o provare a cercarne il nome.


Fantastico, grazie per il tuo impegno nello scrivere questo. Come programmatore, sono sospettoso dell'idea che sia comprensibile che ciò comporti eccezioni non gestite: una connessione Internet non può sempre essere disponibile e anche le app di sistema devono codificare quel potenziale errore. (Per essere onesti, suppongo che l'API genererebbe un'eccezione non consentita piuttosto che un'eccezione di timeout, che dovrebbe essere gestita in modo diverso. Ma dovrebbe esserci sempre un'eccezione generale per tutti i tipi non gestiti, imo).
Halfer

Quando dici che non sarai in grado di aggiornare dal Play Store , intendi solo le app che vengono aggiornate in questo modo o una volta che questo processo è stato eseguito su una qualsiasi app, nessuna app può essere aggiornata tramite lo Store? Suppongo che se un'app modificata dovesse essere aggiornata, si potrebbe semplicemente disinstallarla, scaricarla di nuovo dallo Store, quindi modificarla di nuovo con questo strumento?
Halfer

Suppongo che una buona strategia per provare questo (specialmente su app di sistema come Calendar) sia quella di rimuovere un'autorizzazione alla volta, quindi provare il nuovo binario per un paio di settimane, quindi risciacquare e ripetere. Uno forse può avere la sensazione di quali autorizzazioni mancanti causino il maggior problema e decidere un compromesso di sicurezza / stabilità.
Halfer

Ho visto crash delle app quando sono state rimosse le autorizzazioni. Penso che fosse contatti di accesso o qualcosa del genere. Questo è principalmente un problema con sviluppatori inesperti: un grande team con un team di controllo qualità dovrebbe gestire questo tipo di cose. Intendevo dire che l'app particolare non può essere aggiornata perché nel processo di modifica delle chiavi utilizzate per firmare l'app. Non è possibile farlo con il calendario predefinito in quanto non è possibile disinstallarlo in quanto è un'app di sistema. Inoltre, se si verifica un arresto anomalo, un lolcat direbbe quale autorizzazione manca (IIRC)
RR

è anche possibile ottenere l'APK per un'app installata sul mercato, se non si è rootati?
Kidburla,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.