Il tuo Android non deve disporre dell'accesso root per disabilitare veramente un'app, se hai la versione 4.4.xo successiva. Tutto ciò che serve èadbconfigurazione in PC e debug USB abilitati in un dispositivo non rootato o in un'app di emulazione terminale per un dispositivo rootato (puoi usare anche adb).
Se controlli l' pm
utilizzo di Package Manger ( ), vedresti
pm block [--user USER_ID] PACKAGE_OR_COMPONENT ")
pm sbloccare [--user USER_ID] PACKAGE_OR_COMPONENT ")
Per Lollipop, lo sarebbe
pm hide [--user USER_ID] PACKAGE_OR_COMPONENT ")
pm scopri [--user USER_ID] PACKAGE_OR_COMPONENT ")
Per bloccare o nascondere un pacchetto (è sicuro), semplicemente
pm block PACKAGE # for KitKat
pm hide PACKAGE # for Lollipop
Per sbloccare o scoprire il pacchetto, fare
pm unblock PACKAGE #for KitKat
pm unhide PACKAGE # for Lollipop
PACKAGE
→ nome del pacchetto di un'app. Per conoscere il nome del pacchetto di un'app:
Accoda adb shell
prima del comando per eseguirli dal PC.
La funzione dietro hide ha il seguente commento all'interno del codice sorgente
Mette il pacchetto in uno stato nascosto, che è quasi come uno stato disinstallato, rendendo il pacchetto non disponibile, ma non rimuove i dati o il file del pacchetto effettivo. L'applicazione può essere nascosta ripristinando lo stato nascosto o installandolo
Commenti simili vengono fatti per il blocco qui .
Al fine di verificare l'affermazione, è possibile utilizzare alcuni servizi di sistema, come meminfo
, procstats
e activity
con il dumpsys strumento o anche elencare tutti i processi che utilizzano ps
. Non troverai una presenza attiva dell'app bloccata / nascosta.
Lo stesso vale per molte app di sistema disabilitate utilizzando la GUI o pm disable
non per tutte le app poiché anche un'app disabilitata può ricevere trasmissioni per le quali è stata registrata, cosa che può essere fatta solo se è caricata nella memoria 1 . Tuttavia, un'app disabilitata non può agire da sola, né può essere eseguita da nessun'altra app.
Ho discusso alcune differenze tra hide / block e disable sulla mia domanda pm hide VS pm disable - la crisi dell'identità . Fornisce solo informazioni supplementari a questa risposta in modo da poterle saltare.
MODIFICARE:
Sembra che la tecnica non funzioni per tutte le app su Android KitKat. In tal caso, è sufficiente revocare l'autorizzazione di lettura dall'APK dell'app o rimuovere l'estensione .APK dal nome del file dell'app (quest'ultimo suggerito una volta da Jaskaranbir), seguito da un riavvio soft / completo. Ciò equivale a eliminare un'app dal sistema, con la sola differenza che tutti i file rimarrebbero al loro posto.
Entrambi i passaggi possono essere eseguiti utilizzando qualsiasi app di gestione file radice. La riga di comando è:
adb shell su -c 'chmod 000 /data/app/PACKAGE*' # 000 means no read-write-executable permission to user,group and others.
adb shell su -c 'mv /data/app/PACKAGE* /data/app/PACKAGE' # doing renaming by moving the file
adb reboot
1: mancanza di prove tecniche a supporto del fatto