Antworten:
Titanium Backup usw. wird nur Package Manager (pm)zum Einfrieren einer App verwendet. pmhat eine Funktion, die verhindert, dass Apps im Launcher ausgeführt und angezeigt werden. Um es zu benutzen, führen Titanium Backup usw. den folgenden Befehl aus:
pm disable {Paketname}
Sie können Apps selbst einfrieren, ohne eine spezielle Freezer-App zu verwenden. Verwenden Sie einfach den obigen Befehl in Terminal Emulator oder ADB Shell.
Wenn Sie zum Beispiel einfrieren möchten Stock Web Browser, öffnen Sie den Befehl Terminal Emulatorund wechseln Sie zu root su. Führen Sie dann aus # pm disable com.android.browser.
Es wird zurückkehren #Package com.android.browser new state: disabled. Getan!
Starten Sie Ihren Launcher neu (bei einigen Geräten ist möglicherweise ein Neustart erforderlich), damit das App-Symbol nicht mehr angezeigt wird.
Zum Abtauen der App, ersetzen Sie einfach disablemit enablein dem Befehl.
pm disablesagt nur "getötet", dann startet der Prozess sofort wieder. kill -STOP pid ist besser. Sie können sehen, welche in der psAusgabe gestoppt sind .
Ich habe herausgefunden, wie es pm disablefunktioniert:
Wenn Sie rennen cat /system/bin/pm, gibt es:
# Script to start "pm" on the device, which has a very rudimentary
# shell.
#
base=/system
export CLASSPATH=$base/framework/pm.jar
exec app_process $base/bin com.android.commands.pm.Pm "$@"
Es ist also anscheinend dasselbe wie der PackageManager, den wir von Java aus verwenden, es nennt es sich - nur in einem Stammkontext, auf den keine Benutzer-App direkt zugreifen kann.
Sie KÖNNEN mit prüfen, ob etwas eingefroren ist
getPackageManager().getApplicationEnabledSetting( the package name ) ==
getPackageManager().COMPONENT_ENABLED_STATE_DISABLED)
In Unix-Systemen haben Dateien drei Berechtigungen: Lesen, Schreiben und Ausführen.
(Für 3 Kategorien von Personen: der Eigentümer der Datei [normalerweise ihr Ersteller], eine Gruppe von Personen und alle anderen, aber das Thema ist ungültig).
Wenn Sie die Ausführungsberechtigung der Datei entfernen, kann diese nicht mehr gestartet (ausgeführt) werden.