App Manager
Nutzerhandbuch
v3.1.0
24 März 2023
Copyright © 2020–2022 Muntashir Al-Islam
“Weise und langsam. Wer schnell läuft, der stolpert.” — Bruder Lorenz, Romeo und Julia
App Manager ist ein fortschrittlicher Paketmanager für Android. Er
bietet zahllose Funktionen und benötigt daher ein Benutzer- handbuch, um
seine Benutzer zu unterstützen. Dieses Dokument fungiert als
Benutzerhandbuch für App Manager in dem Sinne, dass es darauf abzielt,
jede Funktion zu beschreiben, die App Manager zu bieten hat. Dieses
Dokument kann auch als “offizieller” Leitfaden für App Manager
betrachtet werden und stellt das erwartete Verhalten von App Manager
dar. Übersetzungen können dieses Dokument (das in Englisch verfasst ist)
falsch interpretieren. Daher sollte jeder befähigte Benutzer die
englische Version des Dokuments lesen, um das Beste aus dem App Manager
herauszuholen. Es kann auch andere inoffizielle oder
Drittanbieter-Ressourcen wie Blog-Artikel, Videos, Chat- Gruppen usw.
geben. Diese Ressourcen können zwar für viele Menschen nützlich sein,
sind aber möglicherweise nicht auf dem neuesten Stand der aktuellen
Version von App Manager. Wenn in App Manager Abweichungen von diesem
Dokument festgestellt werden, sollten diese im App Manager
Problembehandlung gemeldet werden. AM — Kurzbezeichnung für App Manager. Blockieren/Entsperren — Dient zum Sperren oder
Entsperren von Komponenten. Wie Komponenten blockiert werden, hängt von
den Benutzereinstellungen ab. IFW — Kurzform für Intent Firewall. Ops — Kurzbezeichnung für Maßnahmen, e.g. app
ops, batch ops, 1-click ops SSAID — Kurzbezeichnung von
Tracker — Bezeichnet Tracker-Komponenten im
gesamten Dokument und im App Manager, außer in der Scanner-Seite. Tracker umfassen
Bibliotheken wie Crash Reporter, Analytik, Profilerstellung,
Identifizierung, Anzeige, Standort usw. Daher sind sie in ihren
Funktionen nicht gleich. Es gibt keine Unterscheidung oder
Voreingenommenheit zwischen Open-Source- und Closed-Source-Bibliotheken,
die Tracking fördern. Derzeit werden die Versionen v3.0.0 – v3.0.3 (stable) und v3.1.0
(alpha und Debug Versionen) unterstützt. Frühere Versionen von App
Manager können Sicherheitslücken enthalten und sollten nicht verwendet
werden. App Manager wird über die folgenden Quellen verbreitet. Inoffizielle
Quellen können modifizierte Versionen von App Manager vertreiben, und
niemand außer Ihnen ist für die Folgen der Verwendung solcher
Distributionen verantwortlich. Offizielles F-Droid-Repository.1 GitHub Repository. Telegram. Alle außer GitHub sind die Spiegel-Links. Die Tags sollten immer auf
dem neuesten Stand sein, aber beim Master-Zweig ist nicht garantiert,
dass er aktuell zu sein. Wenn das Ziel ist, den Master-Zweig zu klonen,
verwenden Sie den GitHub-Link statt der anderen. App Manager akzeptiert keine Übersetzungen direkt über
Pull-/Merge-Anfragen. Übersetzungen werden automatisiert über Weblate
realisiert. Um dem Übersetzungsteam beizutreten, besuchen Sie https://hosted.weblate.org/engage/app-manager/. Es gibt mehrere Möglichkeiten, wie ein Benutzer einen Beitrag leisten
kann, z. B. durch das Erstellen hilfreicher Fragen, die Teilnahme an
Diskussionen, die Verbesserung von Dokumentationen und Übersetzungen,
das Hinzufügen unbekannter Bibliotheken oder Tracker, die Überprüfung
des Quellcodes sowie die Meldung von Sicherheitslücken. Bauanleitungen finden Sie in der Datei BUILDING, die sich im
Stammverzeichnis des Quellcodes befindet. Repositories, die sich an anderen Orten als GitHub befinden, werden
derzeit als Spiegel betrachtet. Pull-/Merge-Anfragen, die an diesen
Orten eingereicht wurden, werden nicht akzeptiert.2
Stattdessen können Patches (als Hinweis: Wenn Sie Patches per E-Mail einreichen, kann die gesamte Konversation
in Zukunft öffentlich zugänglich sein. Daher sollten Sie keine
persönlich identifizierbaren Informationen (PII) außer Ihrem Namen oder
Ihrer E-Mail-Adresse aufführen. Eine Spende oder ein Kauf ist keine Voraussetzung für die Nutzung
von App Manager. App Manager unterstützt zwar keine Käufe, es
können aber Spenden über Open Source Collective an den Entwickler von
App Manager gesendet werden. Open Source Collective ist ein Finanzdienstleister auf der Open
Collective-Plattform, der Open-Source-Projekten bei der Verwaltung ihre
Finanzen. Derzeit werden Zahlungen per Bankkonten, PayPal, Kredit- oder
Debitkarten und Kryptowährungen unterstützt. Link: https://opencollective.com/muntashir. Mit der Überweisung von Spenden stimmen die Absender zu, dass sie die
Spenden nicht als Druckmittel verwenden, um die von ihnen gewünschten
Funktionen zu priorisieren. Für Feature-Anfragen sind keine Belohnungen
oder Spenden erforderlich, und sie werden nach den Präferenzen des
Entwicklers priorisiert. App-Manager nimmt alle Angebote für Finanzierungen oder Zuschüsse
an. Vertreter der interessierten Organisation können direkt den
Entwickler über die in §[sec:Ansprechpartner]
angegebenen Optionen kontaktieren. Muntashir Al-Islam31.1 Fachbegriffe
Settings.Secure.Android_ID
. Es ist eine Gerätekennung, die
jeder App zugewiesen wird (ab Android Oreo). Sie wird aus der
Kombination des Signierzertifikats der App und der SSAID, die für das
Paket Android
festgelegt wurde. Daher ist sie für eine App
garantiert gleich, so lange der Benutzer das Gerät nicht formatiert. Sie
wird häufig für die Nachverfolgung verwendet.1.2 Unterstützte Versionen
1.3 Offizielle Quellen
1.3.1
Quellen der binären
Verteilung
Link: https://f-droid.org/packages/io.github.muntashirakon.AppManager
Normale Veröffentlichungen: https://github.com/MuntashirAkon/AppManager/releases
Debug-Versionen: https://github.com/MuntashirAkon/AppManager/actions
Normale Veröffentlichungen: https://t.me/AppManagerChannel
Debug-Versionen: https://t.me/AppManagerDebug1.3.2
Links zum Quellcode
1.3.3
Übersetzungen
1.4 Mitwirkende
1.4.1
Hinweise zur Erstellung
1.4.2
Einreichen von Patches
.patch-
Dateien) über
E-Mail-Anhänge eingereicht werden. Die Signierung ist eine
Voraussetzung. Weitere Informationen finden Sie in der Datei
CONTRIBUTING, die sich im Stammverzeichnis des Quellcodes befindet.1.5 Spende & Förderung
1.6 Ansprechpartner
Email: muntashirakon [at]
riseup [dot] net
Key Fingerprint:
7bad37c2981e41f8f6abea7f58f0b4f26c346fce
GitHub: https://github.com/MuntashirAkon
Twitter: https://twitter.com/Muntashir
Die Hauptseite listet alle installierten, deinstallierten und
gesicherten Anwendungen auf. Ein einfacher Klick auf ein installiertes
Anwendungselement öffnet die entsprechende Seite App-Detailseite. Für die
deinstallierten Systemanwendungen wird ein Dialogfeld angezeigt, das zur
Neuinstallation der Anwendung verwendet werden kann. Mit der Option Sortierung aus den Listenoptionen können
die App-Elemente auf verschiedene Weise sortiert und beim Beenden
beibehalten werden. Es ist auch möglich, Elemente zu filtern mit Hilfe
der Filter Option in den
Listenoptionen. Die Filterung ist auch über die Suchleiste mit
zusätzlicher Unterstützung für reguläre Ausdrücke möglich.. Auf dieser Seite sind auch Stapeloperationen oder Operationen mit
mehreren Anwendungen möglich. Der Mehrfachauswahlmodus kann aktiviert
werden, indem man auf ein beliebiges Anwendungssymbol klickt oder indem
man auf ein beliebiges Element in der Liste lange klickt. Einmal
aktiviert, wählt ein einfacher Klick auf ein Listenelement ausgewählt,
anstatt die Seite mit den Anwendungsdetails zu öffnen. In diesem Modus
befinden sich die Stapeloperationen im Mehrfachauswahlmenü unten auf der
Seite. Zu den Operationen gehören: Hinzufügen der ausgewählten Anwendungen zu einem Profil Sicherung, Wiederherstellung oder
Löschung der Anwendungen Blockieren der Tracker für die Anwendungen Löschen von Daten oder Cache aus den Anwendungen Aktivieren/Deaktivieren/Zwangsstoppen/Deinstallieren der
Anwendungen Exportieren der im App Manager gespeicherten
Blockierungsregeln Verhindern von Hintergrundoperationen der Anwendungen (Android 7
und höher) peichern der APK-Dateien in
Einstellen von Netzrichtlinien Barrierefreiheit: Nachdem der Mehrfachauswahlmodus aktiviert wurde, ist es möglich, mit
der rechten oder linken Taste der Tastatur in das Menü mit der rechten
oder linken Taste der Tastatur oder der Fernbedienung zu navigieren. helles gräuliches Orange (Tag) /
Dunkelblau (Nacht) – Die Anwendung
ist für den Batchbetrieb ausgewählt Hellrot (Tag) / Dunkelrot (Nacht) – Deaktivierte
Anwendung Yellow Star – Debuggingfähige
Anwendung Orange Datum – Die
Anwendung hat Zugriff auf die Systemprotokolle Orange UID – Die
Benutzer-ID wird von mehreren Anwendungen gemeinsam genutzt Orange SDK – Die
Anwendung verwendet möglicherweise Klartextverkehr (z. B. HTTP) Rot Paketname – Die
Anwendung erlaubt keine Löschung ihrer Daten Red backup – Die
deinstallierte Anwendung mit einem oder mehreren Backups, die im App
Manager Orange backup –
Veraltetes Backup, d.h. das Basis-Backup enthält eine ältere Version der
installierten Anwendung Dunkles Cyan
backup – aktuelles Backup, d.h. Basis-Backup enthält die
gleiche oder höhere Version der installierten Anwendung Dark cyan package
name – Erzwungener Anwendungsstopp Dark cyan version
– Inaktive Anwendung Magenta – Persistente
Anwendung, d.h. sie bleibt die ganze Zeit über aktiv. Eine Anwendung kann entweder eine Benutzer- oder
eine System-Anwendung mit den folgenden Suffixen
sein: – Unterbrochene Anwendung Auf den Versionsnamen folgen die nachstehenden Präfixe:2.1.1
Stapelverarbeitung
App Manager/apks
2.1.2
Farbcode
2.1.3
Anwendungstypen
X
– Unterstützt mehrere Architekturen0
– Keine Dex-Dateien in der Anwendung
vorhanden#
– Die Anwendung hat das System aufgefordert, einen
großen Heap, d. h. großen Laufzeitspeicher, zuzuweisen?
– Die Anwendung forderte die virtuelle Maschine
auf, in den sicheren Modus zu wechseln.2.1.4
Infos zur Version
_
– Keine Hardware-Beschleunigung (was die
In-App-Animationen oder Transparenzen beeinträchtigt)~
– Reine Testanwendungdebug
– Debuggingfähige Anwendung
Anwendungsdetails Seite besteht aus 11 (elf)
Registerkarten. Sie beschreibt fast alle Informationen, die eine
Anwendung haben kann, einschließlich aller Attribute aus ihrem Manifest,
Anwendungsoperationen, Signier Informationen,
Bibliotheken, und so weiter. Liste der Farben, die auf dieser Seite verwendet werden, und ihre
Bedeutung: Rot (Tag) / Dunkelrot
(Nacht) – Kennzeichnet alle App-OPs oder Berechtigungen
mit dem Flag "Gefährlich" oder alle im App Manager blockierten
Komponenten Hellrot (Tag) / sehr
Dunkelrot (Nacht) – Bezeichnet die außerhalb des App
Managers deaktivierten Komponenten Hinweis: Eine Komponente, die als deaktiviert gekennzeichnet ist, bedeutet
nicht immer, dass sie vom Benutzer deaktiviert wurde: Sie kann auch vom
System deaktiviert werden oder in ihrem Manifest als deaktiviert
gekennzeichnet sein. Die Komponenten einer deaktivierten Anwendung
werden auch vom System (und App Manager) als deaktiviert betrachtet. Kräftiges Orange (Tag) / sehr dunkles Orange (Nacht) –
Bezeichnet die Tracker-Komponenten Zartes Magenta (Tag) / sehr dunkles Violett (Nacht) –
Bezeichnet die laufenden Dienste. App Info enthält allgemeine Informationen über eine
Anwendung. Außerdem werden hier viele Aktionen aufgelistet, die auf
dieser Registerkarte durchgeführt werden können. Die folgende Liste ist in der gleichen Reihenfolge wie auf der
Registerkarte "App-Info" aufgeführt. Anwendungssymbol Das Anwendungssymbol. Wenn die
Anwendung kein Symbol hat, wird das Standardsymbol des Systems
angezeigt. Es ist auch möglich, die APK-Signatur über SHA- oder
MD5-Summen zu überprüfen, die in der Zwischenablage gespeichert sind,
indem Sie einfach darauf klicken. Anwendungskennzeichnung. Das Anwendungslabel
oder der Name der Anwendung. Paketname. Der Name des Anwendungspakets. Wenn
Sie auf den Namen klicken, wird er in der Zwischenablage
gespeichert. Version. Die Anwendungsversion ist in zwei Teile
unterteilt. Der erste Teil heißt Versions- name. Das Format
dieses Teils variiert, besteht aber häufig aus mehreren durch Punkte
getrennten Ganzzahlen. Der zweite Teil wird Versionscode
genannt. Er wird von den ersten Klammern umschlossen. Der Versionscode
ist eine ganze Zahl, die genutzt wird um zwischen Anwendungsversionen zu
unterscheiden (da ein Versionsname für eine Maschine unlesbar sein
kann). Generell gilt, hat eine neue Version einer Anwendung einen
höheren Versionscode als die alten Versionen. Zum Beispiel, wenn
Tags. (Auch bekannt als Tag-Clouds) Tags
enthalten die grundlegendsten, prägnantesten und nützlichsten
Informationen über eine Anwendung, wie z. B.. Tracker info. Anzahl der Tracker-Komponenten in der
Anwendung (z. B. 5 Tracker) Die Farbe des Tags erscheint
orange, wenn die Tracker nicht blockiert sind, und dunkelcyan, wenn sie
im App Manager blockiert sind. Ein Klick auf das Tag öffnet ein
Dialogfeld mit der Liste der Tracker-Komponenten, die gesperrt oder
freigegeben werden können wenn der App Manager über ausreichende
Berechtigungen verfügt. Benutzeranwendung oder Systemanwendung. Wenn es
sich um eine Systemanwendung handelt, ob die Anwendung eine
aktualisierte Version der Systemanwendung ist oder ob die Anwendung
systemlos installiert wurde über Magisk installiert wurde. Split APK info. Anzahl der Splits in der APK mit
Ausnahme der Basis-APK (z. B. 5 splits). Wenn Sie auf das Tag
klicken, wird ein Dialogfeld mit den Informationen über die aufgeteilte
APK, wie Typ und Größe, geöffnet. Debuggable. Die Anwendung kann über ADBdebuggt werden.
Debuggingfähige Anwendungen können bestimmte Funktionen nutzen, die
einer normalen Anwendung nicht zur Verfügung stehen. Auf die Daten der
Anwendung kann über ADB zugegriffen werden (z.B. unter Verwendung von
Test only. Die Anwendung ist eine reine Testanwendung.
Reine Testanwendungen können bestimmte Funktionen nutzen Funktionen
nutzen, die einer normalen Anwendung nicht zur Verfügung stehen. Auf die
Daten der Anwendung kann über ADB zugegriffen werden (z. B. unter
Verwendung von Large heap. Die Anwendung hat eine große Heap-Größe
angefordert, d.h. es wird mehr Platz im Speicher (RAM) für die
dynamische Zuweisung angefordert. Es obliegt dem Betriebssystem zu
entscheiden, ob es der Anwendung einen großen Speicherplatz für die
Anwendung zugewiesen wird. Der App Manager zum Beispiel fordert eine
große Heap-Größe an, weil er eine ganze APK in den Speicher laden muss.
APK in den Speicher laden muss, während er eine APK vor Android 8
scannt. Code. Der Anwendung ist kein Code zugeordnet, d. h. es sind
keine DEX-Dateien vorhanden. Bei einigen Systemanwendungen kann sich der
eigentliche Code an einem anderen Ort befinden. Running. Ein oder mehrere Dienste der Anwendung werden
derzeit im Hintergrund ausgeführt. Ein Klick auf auf das Tag öffnet
einen Dialog mit der Liste der laufenden Dienste. Durch Anklicken eines
beliebigen Dienstes wird dieser in der Protokollanzeige geöffnet Viewer,
sofern die Funktion des Log Viewers aktiviert ist. Die Anwendung wird
zwangsweise gestoppt. Dies kann jedoch nicht verhindern, dass sie später
automatisch später. Disabled. Zeigt an, dass die Anwendung deaktiviert (vor
dem Startprogramm verborgen) ist. Suspended. Zeigt an, dass die Anwendung ausgesetzt ist
(im Launcher ausgegraut). Hidden. Zeigt an, dass die Anwendung versteckt ist (im
Launcher ausgeblendet). MagiskHide. MagiskHide ist aktiviert. Ein Klick auf das
Tag öffnet einen Dialog mit der Liste der Prozessen innerhalb der
Anwendung, die der MagiskHide-Liste hinzugefügt oder aus ihr entfernt
werden können. MagiskDenyList. Die Anwendung ist in MagiskDenyList
vorhanden. Ein Klick auf das Tag öffnet einen Dialog mit der Liste der
Prozesse innerhalb der Anwendung, die zu MagiskDenyList hinzugefügt oder
daraus entfernt werden können. "KeyStore". Die Anwendung hat Elemente im
Android KeyStore. Ein Klick auf das Tag öffnet einen Dialog mit allen
KeyStore-Dateien, die zur Anwendung gehören. Die Anwendung wurde mindestens einmal unter Verwendung von App
Manager gesichert. Ein Klick auf das Tag wird ein Dialog geöffnet, der
alle verfügbaren Sicherungen zusammen mit den Metadaten
enthält. Keine Batterieoptimierung. Die Batterieoptimierung ist
für die Anwendung deaktiviert. Es ist möglich ist es möglich, die
Akku-Optimierung wieder zu aktivieren, indem Sie auf das Tag
klicken. Netzpolitik. Die
Netzpolitik (z. B. die Datennutzung im Hintergrund) ist für die
Anwendung. Wenn Sie auf das Tag klicken, wird ein Dialogfeld mit den
unterstützten Richtlinien für die Plattform zusammen mit den Optionen zu
deren Konfiguration. SSAID. Ein Klick auf
das Tag öffnet ein Dialogfeld mit der aktuellen SSAID, die der Anwendung
zugewiesen ist. Es ist auch möglich, die SSAID bei Bedarf
zurückzusetzen/neu zu generieren. SAF. Gibt an, dass der Anwendung der Zugriff auf einen
oder mehrere Speicherorte oder Dateien gewährt wurde. Dateien, d. h.
URIs, über das Storage Access Framework (SAF). Ein Klick auf das Tag
öffnet einen Dialog mit der Liste der gewährten URIs. . Zeigt an, dass
die Anwendung möglicherweise von Google signiert ist. Horizontales Aktionsfeld. Ein Aktionspanel mit
verschiedenen Aktionen, die für die Anwendung durchgeführt werden
können. die Anwendung. Siehe §2.2.2.3 für eine
vollständige Liste der hier verfügbaren Aktionen. Zusätzliche Aktionen
sind im Menü options menu
verfügbar. Pfade & Verzeichnisse. Enthält verschiedene
Informationen zu Anwendungspfaden, einschließlich app
Verzeichnis (wo sich die APK-Dateien befinden),
Datenverzeichnisse (intern, gerätegeschützt und extern),
geteilte APK-Verzeichnisse (zusammen mit den Split-Namen), und
native JNI-Bibliothek (falls vorhanden). JNI Bibliotheken
werden verwendet, um native Codes aufzurufen, die normalerweise in C/C++
geschrieben sind. Die Verwendung einer nativen Bibliothek kann die
Anwendung schneller laufen lassen oder einer Anwendung helfen,
Bibliotheken von Drittanbietern zu verwenden, die in anderen Sprachen
als Java geschrieben wurden, wie in den meisten Spiele. Die
Verzeichnisse können über Dateimanager von Drittanbietern geöffnet
werden, sofern sie dies unterstützen und über die erforderlichen Die
Verzeichnisse können über Dateimanager von Drittanbietern geöffnet
werden, sofern sie diese unterstützen und über die erforderlichen
Berechtigungen verfügen, indem Sie auf das Startsymbol auf der rechten
Seite jedes Verzeichnisses klicken. Datennutzung. Die von der Anwendung verwendete
Datenmenge, wie vom Betriebssystem gemeldet. Je nach Android-Version
kann dies eine breite Palette von Berechtigungen erfordern,
einschließlich Nutzungszugriff und Telefonie
Berechtigungen. Storage & Cache. Zeigt Informationen über
die Größe der Anwendung (APK-Dateien, optimierte Dateien), Daten und
Cache. Bei älteren Geräten wird auch die Größe von externen Daten,
Cache, Medien und OBB-Ordnern angezeigt. Dieser Teil bleibt
ausgeblendet, wenn auf neueren Geräten die Berechtigung
Nutzungszugriff nicht erteilt wird. Weitere Informationen Zeigt weitere
Informationen an, wie z. B.. SDK. Zeigt Informationen im Zusammenhang mit dem
Android SDK an. Es gibt zwei (bei alten Geräten einen) Werte:
Max bezeichnet das Ziel-SDK und Min bezeichnet das
Mindest-SDK (letzteres ist in alten Geräten nicht verfügbar Geräten
nicht verfügbar). Es ist empfehlenswert, Anwendungen mit dem maximalen
SDK zu verwenden, das die Plattform derzeit unterstützt, um um
sicherzustellen, dass die Anwendung nicht im Kompatibilitätsmodus
ausgeführt wird, um datenschutzwidrige Funktionen zu verwenden. SDK wird
auch als textbfAPI Level bezeichnet. Siehe auch: Android
Versionsgeschichte Flags. Die Anwendungsflags, die zum Zeitpunkt
der Erstellung der Anwendung verwendet wurden. Für eine vollständige
Liste der Flags und deren Funktion finden Sie auf der Seite offizielle
Dokumentation. Date Installed. Das Datum, an dem die Anwendung
zum ersten Mal installiert wurde. Date Updated. Das Datum, an dem die Anwendung
zuletzt aktualisiert wurde. Dies ist dasselbe wie Date
Installed wenn die Anwendung nicht aktualisiert wurde. Installer App. Die Anwendung, die diese
Anwendung installiert hat. Nicht alle Anwendungen liefern die
Informationen, die der Paketmanager verwendet werden, um die
Installer-Anwendung zu registrieren. Daher sollte dieser Wert nicht als
selbstverständlich angesehen werden. Benutzer-ID. Die eindeutige Benutzer-ID, die der
Anwendung vom Android-System zugewiesen wurde. Bei gemeinsam genutzten
Anwendungen wird dieselbe Benutzer-ID mehreren Anwendungen zugewiesen,
die die gleiche Gemeinsame User ID haben. Gemeinsame Benutzer-ID. Gilt für Anwendungen,
die gemeinsam genutzt werden. Die gemeinsam genutzte Anwendung muss die
gleichen Signaturen haben. Primäres ABI. Von dieser Plattform unterstützte
Architektur für diese Anwendung. Zygote Preload Name. Verantwortlich für das
Vorladen von Anwendungscode und Daten, die von allen isolierte Dienste,
die die Anwendung Zygote verwenden. Versteckte API-Durchsetzungsrichtlinie. Seit
Android 9 sind viele Methoden und Klassen im Android-Framework durch
eine versteckte API-Durchsetzungsrichtlinie für Drittanbieteranwendungen
unzugänglich gemacht. Sie hat die folgenden Optionen: Default. Basierend auf der Art der Anwendung. Für
Systemanwendungen sollte es deaktiviert sein, und für andere sollte es
erzwungen werden. None/disabled. Die Anwendung hat vollen Zugriff auf die
versteckte API, wie sie vorher verwendet wurde Android 9. Warn. Wie oben, mit dem Unterschied, dass Warnungen
jedes Mal protokolliert werden, wenn die Anwendung auf die versteckte
API zugreift. Diese Funktion wird meist nicht verwendet. Enforce. Die Anwendung kann nicht auf die versteckte API
zugreifen, entweder auf die dunkelgraue Liste oder die schwarze Liste,
oder beides. Dies ist die Standardoption für Anwendungen von
Drittanbietern in Android 9 und höher, es sei denn, die Anwendung vom
OEM oder dem Hersteller auf die Whitelist gesetzt wurde. Warnung: Die Richtlinie zur Durchsetzung versteckter APIs ist in Android nicht
richtig implementiert und kann von der Anwendung umgangen werden. Aus
diesem Grund sollte diesem Wert nicht vertraut werden. SELinux. Obligatorische
Zugriffskontrollrichtlinie (MAC), die vom Betriebssystem über SELinux
festgelegt wurde. Main Activity. Der Haupteinstiegspunkt in die
Anwendung. Dies ist nur sichtbar, wenn die Anwendung über activities und jede dieser Aktivitäten
kann vom Launcher aus geöffnet werden. Außerdem gibt es eine
Start-Schaltfläche auf der rechten Seite, die verwendet werden kann, um
diese Aktivität zu starten. Die horizontale Aktionsleiste, wie im vorherigen Abschnitt
beschrieben, besteht aus verschiedenen anwendungsbezogenen Aktionen, wie
z. B.. Starten. Starten Sie die Anwendung, sofern sie
eine Starter Aktivität hat. Deaktivieren. Deaktivieren Sie die Anwendung.
Diese Schaltfläche wird nicht angezeigt, wenn sie bereits deaktiviert
ist oder der Benutzer nicht über ausreichende Berechtigungen verfügt.
Nachdem die Anwendung deaktiviert wurde, wird sie aus der
Anwendungsschublade ausgeblendet. Verknüpfungen für die Anwendung können
ebenfalls entfernt werden. Die Anwendung kann nur über den App-Manager
oder ein anderes Tool, das dies unterstützt, wieder aktiviert werden. In
den Android-Einstellungen gibt es keine Option, um eine deaktivierte
Benutzeranwendung zu aktivieren. Deinstallieren. Deinstallieren Sie die
Anwendung. Aktivieren. Aktivieren Sie die Anwendung. Diese
Schaltfläche wird nicht angezeigt, wenn sie bereits aktiviert ist oder
der Benutzer nicht über ausreichende Berechtigungen verfügt. Stopp erzwingen. Erzwingt das Anhalten der
Anwendung. Daten löschen. Löscht Daten aus der Anwendung.
Dies schließt alle Informationen ein, die in den internen und neuerdings
auch in den externen Verzeichnissen gespeicherten Informationen,
einschließlich Konten (falls von der Anwendung festgelegt), Cache usw.
Das Löschen von Daten aus dem App-Manager werden beispielsweise alle in
der Anwendung gespeicherten Regeln entfernt (die Sperrung wird jedoch
nicht aufgehoben). Aus diesem Grund sollten Sie immer Sicherungskopien
Ihrer Regeln erstellen. Diese Schaltfläche wird nicht angezeigt, wenn
der Benutzer über ausreichende Rechte verfügt. Cache löschen. Anwendungscache löschen. Es gibt
keine Android-Möglichkeit, den Cache einer bestimmten Anwendung zu
löschen. Daher sind Root-Rechte erforderlich, um den Cache des internen
Speichers der Anwendung zu löschen. Installieren. Aktion zur Installation einer
Anwendung, die über eine Drittanbieteranwendung geöffnet wurde. Diese
Schaltfläche wird nur angezeigt, wenn die Anwendung noch nicht
installiert wurde. Was gibt’s Neues. Diese Schaltfläche wird für
eine externe Anwendung angezeigt, wenn sie bereits installiert ist. Wenn
Sie auf diese Schaltfläche wird ein Dialogfeld angezeigt, in dem die
Unterschiede zwischen der geöffneten und der installierten Version im
Sinne einer Versionskontrolle an. Die angezeigten Informationen umfassen
Version, Tracker, Zulassungen,
Komponenten, Signaturen (Prüfsummenänderungen),
Merkmale, Gemeinsame Bibliotheken und
SDK. Update. Wird angezeigt, wenn die Anwendung einen
höheren Versionscode hat als die installierte Anwendung. Neuinstallation. Wird angezeigt, wenn die
Anwendung denselben Versionscode hat wie die installierte
Anwendung. Downgrade. Wird angezeigt, wenn die Anwendung
einen niedrigeren Versionscode hat als die installierte
Anwendung. Manifest. Wenn Sie auf diese Schaltfläche
klicken, wird die Manifest-Datei der Anwendung auf einer separaten Seite
angezeigt. Die Manifest-Datei kann über die entsprechende Schaltfläche
(oben rechts) ein- oder ausgepackt oder über die Schaltfläche oder über
die Schaltfläche "Speichern" im Speicher abgelegt werden. Scanner. Scannt die Anwendung, um potenzielle
Tracker und Bibliotheken aufzulisten. Es scannt auch die Datei unter
Verwendung von VirusTotal, falls konfiguriert. Siehe auch: Scanner-Seite Gemeinsame Voreinstellungen Wenn Sie auf diese
Schaltfläche klicken, wird eine Liste der von der Anwendung verwendeten
gemeinsamen Einstellungen angezeigt. Wenn Sie auf ein
Einstellungselement in der Liste klicken, wird die Seite Gemeinsame Voreinstellungen
Editor-Seite. Diese Option ist nur sichtbar, wenn der Benutzer über
die erforderlichen Berechtigungen verfügt. Datenbanken. Wenn Sie auf diese Schaltfläche
klicken, wird eine Liste der Datenbanken angezeigt, die von der
Anwendung verwendet werden. Diese Option ist nur sichtbar, wenn der
Benutzer über die erforderlichen Berechtigungen verfügt. F-Droid. Öffnet die Anwendung in Ihrem
bevorzugten F-Droid-Client. Store. Öffnet die Anwendung in Aurora
Store. Die Option ist nur sichtbar, wenn Aurora Store
installiert ist. Standardmäßig lässt Termux die Ausführung von Befehlen aus
Drittanbieteranwendungen nicht zu. Um diese Option zu verwenden, muss
Termux v0.96 oder höher erforderlich und
Info: Das Aktivieren dieser Option schwächt die Sicherheit von Termux
nicht. Die Anwendungen von Drittanbietern müssen den Benutzer immer noch
fragen, ob die Ausführung beliebiger Befehle in Termux zu erlauben. Aktivitäten, Dienste,
Empfänger (d. h. Rundfunkempfänger) und
Provider (d. h. Inhaltsanbieter) werden gemeinsam als
Anwendungskomponenten bezeichnet. Der Grund dafür ist, dass sie sich in
vielerlei Hinsicht ähnliche Merkmale aufweisen. Zum Beispiel haben sie
alle einen Name, ein Label, ein Icon und
werden über Absicht ausgeführt. Anwendungskomponenten sind die
Bausteine einer Anwendung und müssen im dem Anwendungsmanifest
deklariert werden. Das Anwendungsmanifest ist eine Datei, in der
anwendungsspezifische Metadaten gespeichert werden. Das Android
Betriebssystem lernt durch das Lesen der Metadaten, was es mit der
Anwendung tun soll. Die in diesen Registerkarten verwendeten Farben werden in §2.2.1 erklärt. Es
ist auch möglich, die Liste der Komponenten so zu sortieren, dass
blockierte oder Tracker-Komponenten ganz oben in der Liste angezeigt
werden, und zwar über die Option Sortieren im Menü
Überlauf-Menü. Aktivitäten sind die Fenster oder Seiten, die vom
Android-Betriebssystem eindeutig identifiziert werden können (z. B.,
Hauptseite und App-Detailseite sind zwei Aktivitäten).
Jede Aktivität kann mehrere UI-Komponenten haben bekannt als
Widgets oder Fragmente, und jede Komponente kann
verschachtelt oder übereinander gelegt werden. Der Entwickler kann sich
auch dafür entscheiden, externe Dateien, Links usw. innerhalb einer
Aktivität zu öffnen, indem er eine Methode namens
Inhaltsfilter. Wenn Sie zum Beispiel eine Datei mit Ihrem
Dateimanager öffnen, durchsucht entweder Ihr Dateimanager oder
Betriebssystem die Inhaltsfilter über PackageManager, um die Aktivitäten
zu finden, die die Datei öffnen können, und bietet Ihnen an, die Datei
mit diesen Aktivitäten zu öffnen. Aktivitäten, die exportierbar sind, können in der Regel von
beliebigen Drittanbieteranwendungen geöffnet werden. Einige Aktivitäten
erfordern Berechtigungen, und wenn das der Fall ist, kann nur eine
Anwendung mit diesen Berechtigungen sie öffnen. In der
Aktivitäten können Aktivitäten über die Schaltfläche
Launch gestartet werden. Wenn es erforderlich ist,
zusätzliche zusätzliche Informationen, wie z. B. Intent-Extras, Daten
oder Aktionen, einzugeben, öffnet ein langer Klick auf die Schaltfläche
Starten das Fenster Activity Interceptor Seite, die solche
Funktionen bietet. Hinweis: Wenn Sie eine Aktivität nicht öffnen können, ist es wahrscheinlich,
dass bestimmte Abhängigkeiten nicht erfüllt sind, z.B. Sie Sie können
z. B. die Seite App-Details nicht öffnen, weil Sie dafür
zumindest einen Paketnamen angeben müssen. Da diese Abhängigkeiten nicht
programmatisch hergeleitet werden können, können diese Aktivitäten
standardmäßig nicht über den App Manager geöffnet werden. Es ist auch möglich, über die Schaltfläche Verknüpfung
erstellen Verknüpfungen zu den Aktivitäten zu erstellen. Vorsicht: Wenn Sie App Manager deinstallieren, gehen alle von App Manager
erstellten Verknüpfungen verloren. Im Gegensatz zu Aktivitäten, die
Benutzer sehen können, erledigen Dienste
Hintergrundaufgaben. Zum Beispiel, wenn Sie mit dem Internetbrowser
Ihres Telefons ein Video aus dem Internet herunterladen, verwendet der
Internetbrowser einen Hintergrunddienst, um den Inhalt
herunterzuladen. Wenn eine Aktivität geschlossen oder aus dem Abschnitt
Ereignisse entfernt wird, kann sie sofort zerstört werden,
abhängig von vielen Faktoren, z. B. davon, wie viel freier Speicherplatz
auf dem Telefon vorhanden ist. Dienste können jedoch auf Wunsch
unbegrenzt ausgeführt werden. Wenn mehr Dienste im Hintergrund
ausgeführt werden, kann das Telefon aufgrund des Mangels an Speicher
und/oder Verarbeitungsleistung langsamer werden, und der Akku des
Telefons wird schneller entladen. Bei neueren Android-Versionen ist die
Funktion zur Akkuoptimierung standardmäßig für alle Anwendungen
aktiviert. Wenn diese Funktion aktiviert ist, kann das System jeden
Dienst willkürlich beenden. Allerdings, Vordergrunddienste (d. h.
Dienste, die mit einer festen Benachrichtigung laufen, wie z. B. der
Musikplayer) werden in der Regel nicht beendet, es sei denn, die
Ressourcen des Systems sind knapp (Speicher, Batterie usw.).
Herstellerspezifische Standard-ROMs können eine aggressivere Optimierung
bieten. MIUI verfügt beispielsweise über eine sehr aggressive
Optimierungsfunktion, die als MIUI Optimierung bekannt ist. Beide Aktivitäten und Dienste werden im selben looper
ausgeführt, dem Hauptlooper, was bedeutet, dass die Dienste nicht
wirklich im Hintergrund ausgeführt werden. Es ist die Aufgabe des
Entwicklers, dies sicherzustellen. Wie kommuniziert die Anwendung mit
dem Dienst? Sie verwendet Broadcast Empfänger oder
Binder. Empfänger (auch Broadcast Empfänger
genannt) können für die Ausführung bestimmter Aufgaben für bestimmten
Ereignissen verwendet werden. Diese Komponenten werden als
Broadcast-Empfänger bezeichnet, da sie ausgeführt werden, sobald eine
Broadcast-Nachricht empfangen wird. Diese Broadcast-Nachrichten werden
mit einer Methode namens Intent gesendet. Intent ist eine spezielle
Funktion für Android die verwendet werden kann, um Anwendungen,
Aktivitäten und Dienste zu öffnen und Broadcast-Nachrichten zu senden.
Daher verwenden, wie bei den Aktivitäten, Broadcast-Empfänger
Intent-Filter, um nur die gewünschten Broadcast-Nachricht(en) zu
empfangen. Broadcast-Nachrichten können entweder vom System oder von der
App selbst gesendet werden. Wenn eine Broadcast-Nachricht gesendet wird,
werden die entsprechenden Empfänger vom System geweckt, damit sie
Aufgaben ausführen können. Zum Beispiel, wenn Sie wenig Speicherplatz
haben, kann es sein, dass Ihr Telefon nach dem Aktivieren der mobilen
Daten oder dem Herstellen einer Wifi-Verbindung für einen Moment
einfriert oder verzögert wird. Haben Sie sich schon einmal gefragt,
warum? Das liegt daran, dass Broadcast-Empfänger, die
‘android.net.conn.CONNECTIVITY_CHANGE‘ empfangen können vom System
geweckt werden, sobald Sie die Datenverbindung aktivieren. Da viele Apps
diesen Absichtsfilter verwenden, werden alle diese Apps fast sofort vom
System geweckt, was das Einfrieren oder die Verzögerungen
verursacht. Abgesehen davon können Empfänger für die Interprozesskommunikation
(IPC) verwendet werden, d. h. sie helfen Ihnen bei der Kommunikation
zwischen verschiedenen Anwendungen (vorausgesetzt, Sie haben die
erforderlichen Berechtigungen) oder sogar zwischen verschiedenen
Komponenten einer einzigen Anwendung. Provider (auch Content Provider genannt)
werden für die Datenverwaltung verwendet. Wenn Sie zum Beispiel eine
APK-Datei speichern oder Regeln in App Manager exportieren, wird ein
Inhaltsanbieter namens Im Gegensatz zu Nicht-Root-Benutzern, die in diesen Registerkarten
meist nur Zuschauer sind, können Root-Benutzer verschiedene Operationen
durchführen. Auf der rechten Seite jeder Komponente befindet sich ein Symbol für
“Blockieren” (das zu einem Symbol für “Entblocken/Wiederherstellen”
wird, wenn die Komponente blockiert ist). Diese Ikone (eigentlich eine
Schaltfläche) kann benutzt werden, um den Blockierungsstatus dieser
bestimmten Komponente zu ändern. Wenn Instant Component
Blocking nicht aktiviert ist oder die Blockierung noch nie auf die
Anwendung angewendet wurde, müssen die Änderungen über die Option
Regeln anwenden im Drei-Punkte-Menü. Es ist auch
möglich, die bereits angewendeten Regeln mit der gleichen Option zu
entfernen (dieses Mal als Regeln entfernen). Es ist auch möglich, die Komponente mit einer der verschiedenen
Methoden zu blockieren, indem Sie lange auf das Symbol klicken. Siehe auch: FAQ:
App-Komponenten Es ist möglich, Tracker-Komponenten mit der Option Tracker
blockieren im Drei-Punkte-Menü zu deaktivieren. Alle Tracker
Komponenten werden unabhängig von der Registerkarte, in der Sie sich
gerade befinden, blockiert. Info: Tracker-Komponenten sind eine Untermenge der Anwendungskomponenten.
Daher werden sie mit der gleichen Methode blockiert, die auch für das
Blockieren anderer Komponenten verwendet. Registerkarten App Ops, Verwendete
Berechtigungen und Berechtigungen beziehen
sich auf Berechtigungen. In Android erfordert die Kommunikation zwischen
Apps oder Prozessen, die nicht dieselbe Identität haben (bekannt als
Shared ID), oft Berechtigung(en). Diese Berechtigungen werden
von der Berechtigungssteuerung verwaltet. Einige Berechtigungen werden
als normale Berechtigungen, die automatisch gewährt werden,
wenn sie im Anwendungsmanifest erscheinen, aber gefährlich und
Entwicklung Berechtigungen erfordern eine Bestätigung durch den
Benutzer. Die in diesen Registerkarten verwendeten Farben werden in §2.2.1
erläutert. App Ops steht für Application
Operationen. Seit Android 4.3 werden App Ops von
Android verwendet, um viele Systemberechtigungen zu kontrollieren. Jeder
App Ops ist eine eindeutige Nummer zugeordnet, die zusammen mit dem
privaten Namen der Operation auf der Registerkarte App Ops angezeigt
wird. Einige App Ops haben auch einen öffentlichen Namen. Eine große
Anzahl von App Ops sind auch mit TextitZulassungen
verbunden. Auf dieser Registerkarte wird eine App-Operation als
gefährlich eingestuft, wenn die zugehörige Berechtigung als gefährlich
markiert ist. Andere Informationen wie Flags,
Berechtigungsname, Berechtigungsbeschreibung,
Paketname, Gruppe werden ebenfalls aus der zugehörigen
Erlaubnis übernommen. Andere können
die folgenden enthalten: Mode. Er beschreibt den aktuellen
Berechtigungsstatus, der Erlauben, Verbieten (eine
eher falsche Bezeichnung, es bedeutet einfach Fehler),
Ignorieren (bedeutet eigentlich verweigern),
standardmäßig (abgeleitet aus einer Liste von Voreinstellungen,
die intern vom Hersteller oder dem AOSP festgelegt wurden),
Vordergrund (in neueren Android-Versionen bedeutet es, dass die
App Ops nur verwendet werden kann, wenn die Anwendung im Vordergrund
läuft), und einige benutzerdefinierte Modi, die von den Anbietern
festgelegt wurden (MIUI verwendet beispielsweise
Fragen). Geltungsdauer. Die Zeitspanne, in der diese
Anwendung verwendet wurde (es kann negative Zeitspannen geben, deren
Anwendungsfälle mir derzeit nicht bekannt sind). Accept Time. Das letzte Mal, dass der
Anwendungsvorgang akzeptiert wurde. Reject Time. Letztes Mal, als die App-Operation
abgelehnt wurde. Info: Der Inhalt dieser Registerkarte ist für No-Root-Benutzer sichtbar,
wenn Neben jedem App-OP-Element befindet sich eine Umschalttaste, mit der
es zugelassen oder verweigert (ignoriert) werden kann. Andere
unterstützte Modi können auch durch einen langen Klick auf die
Umschalttaste eingestellt werden. Wenn die gewünschte Anwendung nicht in
der Registerkarte aufgeführt ist, kann stattdessen die Option Set
custom app op im Menü verwendet werden. Es ist auch möglich, die
Änderungen mit der Option Zurücksetzen auf Standard
zurückzusetzen oder alle gefährlichen App-Ops mit der entsprechenden
Option im Menü zu verweigern. Aufgrund der Funktionsweise von App Ops
kann es einige Zeit dauern, bis das System sie anwendet. Tip: Das Verweigern bestimmter App Ops kann zu Fehlverhalten der Anwendung
führen. Wenn alle Versuche fehlschlagen, kann die Option Auf
Standardwerte zurücksetzen als letzter Ausweg verwendet werden. Es ist möglich, die Liste in aufsteigender Reihenfolge nach
App-Op-Namen und den zugehörigen eindeutigen Nummern (oder Werten) zu
sortieren, oder die verweigerten App-Ops zuerst aufzulisten und die
entsprechenden Sortieroptionen zu verwenden. Siehe auch: Anhang: App
Ops Verwendete Berechtigungen sind die von der Anwendung
verwendeten Berechtigungen. Diese werden so genannt, weil sie im
Manifest unter Verwendung von Privilegierte Benutzer können die Berechtigungen Gefährlich
und Entwicklung über die Umschalttaste auf der rechten Seite
jedes Berechtigungselements. Es ist auch möglich, gefährliche
Berechtigungen auf einmal zu entziehen, indem man die entsprechende
Option im Menü. Nur diese beiden Arten von Berechtigungen können
entzogen werden, da Android nicht erlaubt normal Berechtigungen
(was die meisten von ihnen sind) nicht ändern kann. Es könnte immer noch
möglich sein, sie zu widerrufen, indem man
Info: Da gefährliche Berechtigungen standardmäßig vom System entzogen
werden, ist der Entzug aller gefährlichen Berechtigungen gleichbedeutend
mit dem Zurücksetzen aller Berechtigungen. Es ist möglich, die Berechtigungen nach ihrem Namen (in aufsteigender
Reihenfolge) zu sortieren oder zu wählen, ob zuerst die verweigerten
oder gefährlichen Berechtigungen zuerst anzuzeigen, indem Sie die
entsprechenden Optionen im Menü verwenden. Berechtigungen sind normalerweise benutzerdefinierte
Berechtigungen, die von der Anwendung selbst festgelegt werden. Diese
Art von Berechtigungen werden als interne Berechtigungen
gekennzeichnet. Sie enthält auch in anderen Anwendungen deklarierte
Berechtigungen, die als Externe Berechtigungen bezeichnet
werden. Externe Berechtigungen werden in den Anwendungskomponenten als
Abhängigkeiten angegeben, d. h. eine Anwendung darf die Komponente nur
aufrufen, wenn sie die angegebene Berechtigung besitzt. Hier ist eine
vollständige Beschreibung der einzelnen Element, das dort angezeigt
wird: Name. Jede Berechtigung hat einen eindeutigen
Namen wie Icon. Jede Berechtigung kann ein eigenes Symbol
haben. Die anderen Berechtigungsregisterkarten haben kein Symbol, weil
sie im Anwendungsmanifest kein Symbol enthalten. Beschreibung. Dieses optionale Feld beschreibt
die Berechtigung. Wenn der Berechtigung keine Beschreibung zugeordnet
ist, wird das Feld nicht angezeigt. Flags. (Verwendet das Flaggensymbol oder den
Namen Schutzstufe) Hier werden verschiedene
Berechtigungen Flaggen wie Normal, Entwicklung,
Gefährlich, instant, Gewährt,
Widerrufen, Signatur, Privilegiert,
usw. Paketname. Bezeichnet den mit der Berechtigung
verbundenen Paketnamen, d. h. das Paket, das die Berechtigung
definiert. Gruppe. Der Gruppenname, der mit der Berechtigung
verbunden ist (falls vorhanden). Mehrere zusammengehörige Berechtigungen
können oft zusammen gruppiert werden. Signaturen werden eigentlich Signierinformationen
genannt. Eine Anwendung wird mit einem oder mehreren Signierzertifikaten
signiert, bevor sie veröffentlicht wird. Die Integrität einer Anwendung,
d.h. ob die Anwendung vom tatsächlichen Entwickler stammt und nicht von
anderen Personen verändert wurde, kann anhand der Signierinformationen
überprüft werden. Wenn eine Anwendung von einem Unbefugten geändert
wird, kann sie nicht mehr mit den ursprünglichen Zertifikaten signiert
werden, da die Signierinformationen vom eigentlichen Entwickler geheim
gehalten werden. Signierinformationen können durch Prüfsummen überprüft
werden. Die Prüfsummen werden aus den Zertifikaten selbst generiert.
Wenn der Entwickler die Prüfsummen für die Signierzertifikate liefert,
können diese mit den Prüfsummen verglichen werden, die in der
Registerkarte Signaturen generierten Prüfsummen
abgeglichen werden, um die Anwendung zu verifizieren. Wenn Sie zum
Beispiel App Manager von GitHub oder dem Telegram Channel
heruntergeladen haben, können Sie überprüfen, ob die Anwendung
tatsächlich von mir freigegeben wurde, indem Sie einfach die folgende
SHA256-Prüfsumme mit der auf dieser Registerkarte
angezeigten: In dieser Registerkarte werden mehrere Hash-Algorithmen zur Erzeugung
von Prüfsummen verwendet. Dazu gehören MD5, SHA1,
SHA256 und SHA512. Vorsicht: Signierinformationen sollten mit einem zuverlässigen
Hashing-Algorithmus wie SHA256 überprüft werden. Verlassen Sie
sich NICHT auf MD5 oder SHA1-Prüfsummen, da diese
dafür bekannt sind, dieselben Prüfsummen für mehrere Zertifikate zu
erzeugen. Auf anderen Registerkarten werden Komponenten des Android-Manifests
wie Funktionen und Konfigurationen aufgelistet. Eine vollständige
Beschreibung über diese Registerkarten wird in Kürze verfügbar sein.2.2.1
Farbcodes
2.2.2
Registerkarte App-Info
2.2.2.1 Allgemeine Informationen
123
und 125
zwei Versionscodes einer Anwendung
sind, kann man sagen, dass die letztere aktueller ist als die erstere
weil der Versionscode der letzteren höher ist. Anwendungen, die
verschiedene APK-Dateien für dieselbe Version auf verschiedenen
Plattformen (Mobilgeräte, Tabs, Desktops usw.) oder Architekturen (32/64
Bit, ARM oder Intel) anbieten, können die Versionsnummern Nummern
irreführend sein, da sie oft Präfixe für jede Plattform
hinzufügen.run-as
command) ohne zusätzliche Berechtigungen.run-as
command) ohne zusätzliche
Berechtigungen.2.2.2.3 Waagerechte Aktionsfläche
2.2.2.5 Termux konfigurieren
allow-external-apps=true
muss in
~/.termux/termux.properties
hinzugefügt werden.2.2.3
Registerkarten der
Komponenten
2.2.3.1 Aktivitäten
2.2.3.2 Dienste
2.2.3.3 Empfänger
2.2.3.4 Anbieter
.fm.FmProvider
verwendet, um die APK
zu speichern oder die Regeln zu exportieren. Es gibt viele
Inhaltsanbieter, darunter auch die vom System bereitgestellten, um
verschiedene inhaltsbezogenen Aufgaben wie Datenbankverwaltung,
Nachverfolgung, Suche usw. Jeder Inhaltsanbieter hat ein Feld namens
Authority, das für die Anwendung im gesamten Android-Ökosystem
ebenso eindeutig ist wie der Paketname.2.2.3.5 Zusätzliche Funktionen für
gerootete Handys
2.2.3.5.1 Komponenten blockieren
2.2.3.5.2 Tracker blockieren
2.2.4
Registerkarten
Berechtigungen
2.2.4.1 Anwendungsoperationen
android.permission.GET_APP_OPS_STATS
über ADBgewährt
wird.2.2.4.2 Verwendete Berechtigungen
Verwendete Berechtigung
-Tags
angegeben werden. Informationen wie Flags,
Berechtigungsname, Berechtigungsbeschreibung,
Paketname, Gruppe werden aus dem zugehörigen Berechtigung.runtime-permissions.xml
selbst bearbeitet, aber ob dies
eine Möglichkeit ist, wird noch untersucht.2.2.4.3 Berechtigungen
android.permission.INTERNET
, aber mehrere
Anwendungen können die gleiche Berechtigung anfordern.2.2.5
Registerkarte Signaturen
320c0c0fe8cef873f2b554cb88c837f1512589dcced50c5b25c43c04596760ab
2.2.7
Sonstige Registerkarten
Diese Seite wird angezeigt, wenn Sie die Option 1-Click Ops im Hauptmenü auswählen. Mit dieser Option können Sie die Werbe-/Tracker-Komponenten der
installierten Anwendungen blockieren oder freigeben. Wenn Sie diese
Option auswählen, fragt der App Manager, ob er Tracker von allen
Anwendungen oder nur von den Benutzeranwendungen auflisten soll.
Neulinge sollten es vermeiden, Tracker aus den Systemanwendungen zu
blockieren, um unangenehme Folgen zu vermeiden. Danach erscheint ein
Dialogfeld mit mehreren Auswahlmöglichkeiten, in dem Sie eine oder
mehrere Anwendungen von diesem Vorgang ausschließen können. Die
Änderungen werden sofort übernommen, wenn Sie die Schaltfläche
block oder unblock drücken. Hinweis: Bestimmte Anwendungen funktionieren nach dem Blockieren ihrer Tracker
möglicherweise nicht mehr wie erwartet. Wenn dies der Fall ist,
entfernen Sie die Blockierungsregeln auf einmal oder nacheinander in den
Komponenten-Registerkarten der App-Detailseite für die entsprechende
Anwendung. Diese Option kann verwendet werden, um bestimmte
Anwendungskomponenten zu blockieren, die durch ihre Signaturen
festgelegt sind. Die Signatur einer Komponente ist der vollständige Name
oder ein Teil des Namens der Komponente. Aus Sicherheitsgründen wird
empfohlen, am Ende jeder Teilsignatur einen Vorsicht: Wenn Sie sich nicht über die Folgen des Blockierens von
Anwendungskomponenten anhand ihrer Signaturen im Klaren sind, sollten
Sie diese Option nicht verwenden, da sie zu einem Bootloop oder
Softbrick führen kann und Sie infolgedessen möglicherweise einen
Werksreset durchführen müssen. Diese Option kann verwendet werden, um bestimmte Anwendungsoperationen aller oder ausgewählter
Anwendungen zu konfigurieren. Es gibt zwei Felder. In das erste Feld
können mehrere app-ops-Konstanten (entweder Namen oder Werte) durch
Leerzeichen getrennt eingegeben werden. Es ist nicht immer möglich, im
Voraus alle App-Op-Konstanten zu kennen, da sie von Gerät zu Gerät und
von Betriebssystem zu Betriebssystem variieren. Die gewünschte
App-Op-Konstante ist in der Registerkarte App Ops auf der Seite
App-Detailseite zu finden. Das
zweite Feld kann verwendet werden, um eine der Modi einzufügen oder auszuwählen, die
für die angegebenen App Ops gesetzt werden. Vorsicht: Wenn Sie nicht gut über App Ops und die Folgen ihrer Blockierung
informiert sind, sollten Sie diese Option nicht verwenden. 1-Klick-Optionen für Backups. Als Vorsichtsmaßnahme werden die
betroffenen Sicherungen aufgelistet, bevor ein Vorgang durchgeführt
wird. . Sichern Sie alle installierten Anwendungen. Sichern Sie alle installierten Anwendungen, für die bereits ein
Backup vorhanden ist. Sichern Sie alle installierten Anwendungen ohne vorheriges
Backup. Überprüfen Sie die kürzlich erstellten Sicherungen der installierten
Anwendungen und wiederholen Sie die Sicherung, falls erforderlich. Wenn sich eine Anwendung seit der letzten Sicherung geändert hat,
wiederholen Sie ihre Sicherung. Dabei wird eine Reihe von Indizes
überprüft, darunter die Anwendungsversion, das Datum der letzten
Aktualisierung, das Datum des letzten Starts, die Integrität und die
Datei-Hashes. Die Hashes der Verzeichnisse werden während des
Sicherungsvorgangs erfasst und in einer Datenbank gespeichert. Bei der
Ausführung dieses Vorgangs werden neue Hashes erstellt und mit den in
der Datenbank gespeicherten verglichen. 1-Klick-Optionen für die Wiederherstellung. Als Vorsichtsmaßnahme
werden die betroffenen Sicherungen aufgelistet, bevor eine Operation
durchgeführt wird. Wiederherstellen des Basis-Backups aller gesicherten
Anwendungen. . Wiederherstellen des Basis-Backup aller gesicherten
Anwendungen, die derzeit nicht installiert sind. . Wiederherstellen des Basis-Backup von bereits
installierten Anwendungen, deren Versionscodes höher sind als die der
installierten Versionen. Delete caches from all applications, including Android system. During
this operation, caches of all the running applications may not be
cleared as expected.2.3.1
Blockieren/Entsperren von
Trackern
2.3.2
Block
Komponenten Punkte
.
(Punkt) am
Ende jeder Teilsignatur hinzuzufügen, da der zugrunde liegende
Algorithmus die Komponenten in einer gierigen Weise sucht und abgleicht.
Es ist auch möglich, mehr als eine Signatur einzufügen; in diesem Fall
müssen alle Signaturen durch Leerzeichen getrennt werden. Ähnlich wie
bei der obigen Option gibt es auch die Möglichkeit, die
Systemanwendungen zu sperren.2.3.3
Modus für App Ops
einstellen Punkte
2.3.4
Sichern
2.3.4.0.1 Alle Anwendungen
sichern
2.3.4.0.2 Vorhandene Sicherungen
rückgängig machen.
2.3.4.0.3 Anwendungen ohne Backups
sichern.
2.3.4.0.4 Backups überprüfen und
wiederherstellen.
2.3.4.0.5 Sichern Sie Anwendungen
mit Änderungen.
2.3.5
Wiederherstellen
2.3.5.0.1 Wiederherstellen aller
Anwendungen
2.3.5.0.2 Wiederherstellen von
nicht installierten Anwendungen
2.3.5.0.3 Wiederherstellen der
letzten Backups
2.3.6
Trim Caches in All
Apps
Die Seite Profile kann über das Menü Optionsmenu auf der Hauptseite aufgerufen werden. Sie zeigt in erster Linie eine Liste der konfigurierten Profile zusammen mit den typischen Optionen zur Durchführung von Operationen mit ihnen an. Neue Profile können auch über die Schaltfläche plus in der rechten unteren Ecke hinzugefügt oder importiert werden, dupliziert oder aus einer der Voreinstellungen erstellt werden. Wenn Sie auf ein Profilelement klicken, wird die zugehörige Seite Profilseite geöffnet.
Die Seite Profil zeigt die Konfigurationen für ein Profil an. Sie
bietet auch die Möglichkeit, sie zu bearbeiten. Auf der Registerkarte Apps werden die in diesem Profil konfigurierten
Pakete aufgelistet. Pakete können hinzugefügt oder entfernt werden,
indem Sie die Schaltfläche Plus unten nutzen. Pakete können
auch entfernt werden, indem Sie lange auf sie klicken (in diesem Fall
wird ein Popup mit der einzigen Option Löschen angezeigt). Auf der Registerkarte Konfigurationen können Sie die ausgewählten
Pakete konfigurieren. Dies ist der Text, der auf der Seite Profile angezeigt wird. Wenn er nicht
gesetzt ist, werden stattdessen die aktuellen Konfigurationen
stattdessen angezeigt. Gibt an, wie sich bestimmte konfigurierte Optionen standardmäßig
verhalten werden. Wenn zum Beispiel die Option deaktivieren
aktiviert ist, werden die Anwendungen deaktiviert, wenn der Zustand
Ein ist, und aktiviert, wenn der Zustand Aus ist.
Derzeit werden nur die Werte Ein und On
unterstützt. Wählen Sie die Benutzer aus, auf die das Profil angewendet werden
soll. Standardmäßig sind alle Benutzer ausgewählt. Dies verhält sich genauso wie die Option Block-Komponenten-Punkte auf
der 1-Klick-Ops-Seite. Allerdings wird die Blockierung hier nur auf die
ausgewählten Pakete angewendet. Wenn der Status von Status ein ist, werden die
Komponenten blockiert, und wenn der Status aus ist, werden die
Komponenten entsperrt. Die Option kann (unabhängig von den eingegebenen
Werten) durch Klicken auf die Schaltfläche deaktiviert im
Eingabedialog deaktiviert werden. Siehe auch: Was sind die
App-Komponenten? Dies verhält sich genauso wie die Option Modus für App Ops
einstellen… auf der der Seite 1-Klick-Ops. Allerdings wird der
Vorgang hier nur auf die ausgewählten Pakete angewendet. Wenn der Status
von Status Ein ist,
werden die App-Ops verweigert (d. h. ignoriert), und wenn der Status
Aus ist, werden die App-Ops zugelassen. Die Option kann
deaktiviert werden (unabhängig von den eingegebenen Werte) durch Klicken
auf die Schaltfläche deaktivieren im Eingabedialog deaktiviert
werden. Mit dieser Option können Sie bestimmte Rechte für die ausgewählten
Pakete gewähren oder entziehen. Wie andere oben, müssen die
Berechtigungen durch Leerzeichen getrennt werden. Wenn der Staus Ein ist, werden die
werden die Berechtigungen entzogen, und wenn der Status Aus
ist, werden die Berechtigungen erlaubt. Die Option kann deaktiviert
werden (unabhängig von den eingegebenen Werten), indem Sie im
Eingabedialog auf die Schaltfläche deaktivieren klicken. Mit dieser Option können Sie ein Backup der ausgewählten Anwendungen
und ihrer Daten erstellen oder diese wiederherstellen. Hier sind zwei
Optionen verfügbar: Sicherungsoptionen und
Sicherungsname. Backup-Name Legen Sie einen benutzerdefinierten
Namen für die Sicherung fest. Wenn der Name der Sicherung festgelegt
ist, erhält sie bei jeder Erstellung einer Sicherung einen eindeutigen
Namen mit dem Suffix backup-name erhalten. Dieses Verhalten wird in
einer zukünftigen Version korrigiert werden. Lassen Sie dieses Feld für
reguläre “Basis”-Sicherungen leer (stellen Sie außerdem sicher, dass Sie
Mehrfachsicherung in den Sicherungsoptionen
aktivieren). Wenn der Status von Staus
Ein ist, werden die Pakete gesichert, und wenn der Status
off, werden die Pakete wiederhergestellt. Die Option kann
deaktiviert werden, indem Sie auf die Schaltfläche deaktivieren
im dem Eingabedialog. Achtung: Diese Option ist noch nicht implementiert. Ermöglicht die Aktivierung oder Deaktivierung der ausgewählten Pakete
in Abhängigkeit vom Wert von Status. Wenn der Zustand
Ein ist, werden die Pakete deaktiviert, und wenn der Zustand
Aus ist, werden die Pakete aktiviert. Ermöglicht, dass die ausgewählten Pakete zwangsgestoppt werden. Aktiviert das Löschen des Cache für die ausgewählten Pakete. Aktiviert das Löschen von Daten für die ausgewählten Pakete. Aktiviert die Sperrung oder Entsperrung der Tracker-Komponenten der
ausgewählten Pakete je nach dem Wert von Status. Wenn der Zustand
EIN ist, werden die Tracker blockiert, und wenn der Zustand
AUS ist, werden die Tracker entsperrt. Aktiviert die Speicherung von APK-Dateien unter
2.5.2
Registerkarte Anwendungen
2.5.3
Registerkarte
Konfigurationen
2.5.3.1 Anmerkung
2.5.3.2 Zustand
2.5.3.3 Nutzer
2.5.3.4 Komponenten
2.5.3.5 Anwendungsoperationen
2.5.3.6 Berechtigungen
2.5.3.7 Sichern/Wiederherstellen
2.5.3.8 Regeln für die
Exportsperre
2.5.3.9 Deaktivieren
2.5.3.10 Zwangsstopp
2.5.3.11 Zwischenspeicher löschen
2.5.3.12 Daten löschen
2.5.3.13 Tracker blockieren
2.5.3.14 APK speichern
AppManager/apks
(oder in dem auf der Einstellungsseite
ausgewählten Verzeichnis) der ausgewählten Pakete.
Die Seite Einstellungen kann verwendet werden, um das Verhalten des
App Manager anzupassen. Konfigurieren Sie die In-App-Sprache. App Manager unterstützt derzeit
21 (einundzwanzig) Sprachen. In-App-Thema konfigurieren. Change layout direction, either left to right or right to left. This
is usually set using the selected language but not everybody prefers the
same direction. Aktivieren oder deaktivieren Sie bestimmte Funktionen im App Manager,
z. B. Interceptor Manifest Betrachter Scanner Paketinstallationsprogramm Benutzungszugriff Wenn diese Funktion
deaktiviert ist, fragt der App Manager nie nach der Berechtigung
Benutzungszugriff. Protokollanzeige App Explorer. Die Option “Explore” wird nicht
verfügbar sein, wenn versucht wird, eine APK-Datei zu öffnen. Nutze das Internet. Alle Internetfunktionen sind
deaktiviert, wenn diese Funktion ausgeschaltet ist. Derzeit ist die
einzige Internetfunktion das Abrufen von Scanberichten über
VirusTotal. Sperren Sie den App Manager mit der Android-Bildschirmsperre, sofern
eine Bildschirmsperre konfiguriert ist. Warnung: Wenn die Bildschirmsperre in Android nach dem Aktivieren dieser
Einstellung deaktiviert ist, wird App Manager nicht geöffnet, bis sie
wieder aktiviert wird. Der Betriebsmodus legt fest, wie der App Manager insgesamt
funktioniert. Er hat die folgenden Optionen: Auto. Überlassen Sie App Manager die Wahl der
geeigneten Option. Obwohl dies die Standardoption ist, sollten nicht
gerootete Benutzer den Modus no-root verwenden. Root. Betreibt App Manager im Root-Modus. App
Manager fällt in den Modus no-root zurück, wenn root nicht
erkannt wird, oder in seltenen Fällen, wenn die Binder-Kommunikation
über root deaktiviert ist (z.B. in Phh
SuperUser). ADB über TCP. Betreiben Sie App Manager im
ADB-Modus über ADB über TCP. App Manager
fällt in den no-root-Modus zurück, wenn ADB over TCP nicht
aktiviert ist. Wireless debugging. Aktivieren Sie ADB über Wireless
Debugging. Es wird versucht, zunächst automatisch eine Verbindung mit
dem konfigurierten Port automatisch zu verbinden. Wenn dies fehlschlägt,
wird der Benutzer aufgefordert, entweder ein Pairing durchzuführen oder
sich manuell mit dem ADB-Daemon zu verbinden. App Manager fällt in den
Modus no-root zurück, wenn die Verbindung mit dem ADB-Daemon
auf diese Weise nicht zustande kommt. Info: Diese Option wird nur bei Geräten mit Android 11 oder höher
angezeigt, da Wireless Debugging mit Android 11 eingeführt wurde. No-root. Betreiben Sie App Manager im no-root
Modus. Während App Manager in diesem Modus besser funktioniert, werden
alle Root- oder ADB-spezifischen Funktionen deaktiviert. Hier wird auch der aktuell abgeleitete Betriebsmodus angezeigt. Die
tatsächlichen Betriebsmodi sind root, ABD und
no-root. Konfigurieren Sie die Signaturschemata,
die verwendet werden sollen, wenn die APK-Signierung aktiviert ist. Die
Signaturschemata v1 und v2 sind standardmäßig aktiviert, aber v3 sollte
ebenfalls aktiviert werden, um eine angemessene Sicherheit in Android 9
oder höher zu gewährleisten. Konfigurieren Sie einen benutzerdefinierten Signierschlüssel zum
Signieren von APK-Dateien. Schlüssel aus einem bestehenden KeyStore
können in den App Manager importiert werden, oder es kann ein neuer
Schlüssel generiert werden. Gefahr: Verwenden Sie nicht den Schlüssel, der mit App Manager geliefert
wird, da er für jeden öffentlich zugänglich ist. In Zukunft wird der
Standardschlüssel entfernt werden. Tipp: Wenn Sie den Schlüssel in Zukunft verwenden müssen, empfiehlt es
sich, selbst einen KeyStore zu erstellen und den Schlüssel zu
importieren. Bei Schlüsseln, die im App Manager generiert wurden,
besteht die Gefahr, dass sie ohne eine ordnungsgemäße Sicherung gelöscht
werden. Wenn diese Option aktiviert ist, wird vor der Installation der
Anwendung eine Liste der Benutzer angezeigt. Die Anwendung wird nur für
die angegebenen Benutzer installiert. Ob die APK-Dateien vor der Installation der Anwendung signiert werden
sollen. Die Seite APK Signierung kann
verwendet werden, um die Signierung zu konfigurieren. Definieren Sie den APK-Installationsort. Dies kann eine der Optionen
auto, nur intern und vorzugsweise extern
sein. Bei neueren Android-Versionen garantiert die Auswahl der letzten
Option nicht, dass die Anwendung auf dem externen Speicher installiert
wird. Wählen Sie die Installationsanwendung aus. Dies ist nützlich für
Anwendungen, die explizit das Installationsprogramm prüfen, um
festzustellen, ob die Anwendung rechtmäßig installiert wurde. Dies
funktioniert nur für Root- oder ADB-Benutzer. Hinweis: Während die Suche nach dem Installationsprogramm ein legitimes
Anliegen für eine Anwendung zu sein scheint, kümmert sich das
Android-Framework bereits während der Installation um dieses Problem.
Die Suche nach dem Installationsprogramm ist einfach der falsche Weg, um
die Legitimität der Quelle einer Anwendung zu beweisen. Ob die Tracking-Komponenten sofort nach der Installation der
Anwendung blockiert werden sollen. Ob Änderungen an Version, Tracker, Komponenten, Berechtigungen,
Signaturen, SDK usw. versionskontrolliert angezeigt werden sollen, wenn
die Anwendung bereits installiert wurde. Ob Anwendungen immer im Hintergrund installiert werden sollen. Sobald
die Installation abgeschlossen ist, wird eine Benachrichtigung
ausgegeben. Einstellungen in Bezug auf Sicherung/Wiederherstellung. Legen Sie die Kompressionsmethode fest, die bei Backups verwendet
werden soll. App Manager unterstützt die Komprimierungsmethoden GZip und
BZip2, GZip ist die Standardkomprimierungsmethode. Es hat keinen
Einfluss auf die Wiederherstellung einer bestehenden Sicherung. Passen Sie das Dialogfeld Sicherung/Wiederherstellung an,
das bei der Erstellung einer Sicherung angezeigt wird. Siehe auch: Sicherungsoptionen Sicherung von Anwendungen mit Einträgen im Android KeyStore zulassen.
Diese Option ist standardmäßig deaktiviert, da einige Anwendungen (z. B.
Signal) bei der Wiederherstellung abstürzen können. Legen Sie eine Verschlüsselungsmethode für die Backups fest. App
Manager unterstützt derzeit OpenPGP (über OpenKeyChain),
AES und RSA (Hybridverschlüsselung mit AES). Wie bei der APK Signierung werden die AES- und
RSA-Schlüssel im KeyStore gespeichert und können aus anderen KeyStores
importiert werden. Gefahr: Zu Ihrer eigenen Sicherheit ist es nicht empfehlenswert,
RSA-Schlüssel innerhalb des App Managers zu erzeugen. Stattdessen
sollten sie aus einem KeyStore importiert werden, der an einem sicheren
Ort aufbewahrt wird. Wählen Sie den Speicher, in dem die Backups gespeichert werden. Hier
werden auch Protokolle und exportierte APK-Dateien gespeichert. Hinweis: Das Backup-Volume gibt nur den Speicherort, nicht den Pfad an.
Backups werden traditionell im Ordner Importieren Sie Sicherungen aus alten und eingestellten Projekten wie
Titanium Backup, OAndBackup und Swift Backup (Version 3.0 bis 3.2). Die
Sicherungen werden nach dem Importieren nicht gelöscht, um Datenverluste
zu vermeiden, falls die importierten Sicherungen nicht ordnungsgemäß
wiederhergestellt werden können. Standardmäßig werden Sperrregeln nicht angewendet, es sei denn, sie
werden explizit in der Seite mit den
Anwendungsdetails für eine beliebige Anwendung angewendet. Nach
Aktivierung dieser Option werden alle (alten und neuen) Regeln sofort
für alle Anwendungen angewendet, ohne dass die Sperrung für eine
Anwendung explizit aktiviert wird. Siehe auch: FAQ: Was ist
Instant-Component-Blocking? Es ist möglich, Sperrregeln im App Manager für alle Anwendungen zu
importieren oder zu exportieren. Die Arten von Regeln (Komponenten, App
Ops oder Berechtigungen), die importiert oder exportiert werden sollen,
können ebenfalls ausgewählt werden. Es ist auch möglich, Sperrregeln aus
Blocker und Watt zu importieren. Wenn es
notwendig ist, Sperrregeln für eine einzelne Anwendung zu exportieren,
kann die entsprechende App-Detailseite verwendet werden, um
Regeln zu exportieren, oder für mehrere Anwendungen können Batchoperationen verwendet
werden. Siehe auch: Regelspezifikation Exportiert Sperrregeln für alle im App Manager konfigurierten
Anwendungen. Dies kann Anwendungskomponenten,
App-OPs und Berechtigungen umfassen, basierend auf den in den
Multi-Choice-Optionen ausgewählten Optionen. Importieren Sie zuvor exportierte Blockierungsregeln aus dem App
Manager. Ähnlich wie beim Export kann dies App Komponenten, App
Operationen und Berechtigungen basierend auf den in den
Multi-Choice-Optionen ausgewählten Optionen enthalten. Hinzufügen von Komponenten zum App Manager, die von anderen
Anwendungen deaktiviert wurden. App Manager verfolgt nur die
Komponenten, die innerhalb von App Manager deaktiviert wurden. Wenn
Anwendungskomponenten von anderen Tools oder Anwendungen blockiert oder
deaktiviert werden, können Sie diese mit dieser Option importieren. Wenn
Sie auf diese Option klicken, findet App Manager die Komponenten, die
möglicherweise von anderen Anwendungen oder Tools deaktiviert wurden,
und listet nur den Namen der Anwendungen zusammen mit der Anzahl der
übereinstimmenden Komponenten auf. Zur Sicherheit sind alle Anwendungen
standardmäßig nicht ausgewählt. Sie müssen manuell ausgewählt werden,
und die Blockierung muss über den App Manager erneut angewendet
werden. Achtung: Seien Sie bei der Verwendung dieses Tools vorsichtig, da es viele
falsch positive Ergebnisse geben kann. Wählen Sie nur die Anwendungen
aus, bei denen Sie sich sicher sind. Importieren Sie Konfigurationsdateien aus Watt, wobei jede Datei
Regeln für ein einzelnes Paket enthält und der Dateiname der Name des
Pakets mit der Erweiterung Tip: Speicherort der Konfigurationsdateien in Watt:
Importieren Sie Blockierungsregeln aus Blocker, wobei jede
Datei Regeln für ein einzelnes Paket enthält. Diese Dateien haben die
Erweiterung Ein-Klick-Option zum Entfernen aller im App Manager konfigurierten
Regeln. Dadurch werden alle blockierten Komponenten aktiviert, die
App-OPs werden auf ihre Standardwerte gesetzt und die Berechtigungen
werden gewährt. Mit dieser Option können Sie festlegen, für welche Benutzer App
Manager arbeiten soll. App Manager arbeitet standardmäßig für alle
Benutzer im Root- oder ADB-Modus. Legt das Format des APK-Namens fest, das beim Speichern über
Batch-Operationen oder über Profile verwendet werden soll. App Manager
bietet einige spezielle Schlüsselwörter, die in Importieren oder exportieren Sie den von App Manager verwendeten
KeyStore. Dies ist ein Bouncy Castle KeyStore mit der Erweiterung
Anzeige von Android-Version, Sicherheit, CPU, GPU, Akku, Speicher,
Bildschirm, Sprachen, Benutzerinformationen usw.2.6.1
Sprache
2.6.2
Appearance
2.6.2.1 App-Design
2.6.2.2 Layout Direction
2.6.2.3 Aktivieren/Deaktivieren von
Funktionen
2.6.3
Privacy
2.6.3.1 Bildschirm sperren
2.6.4
Betriebsmodus
2.6.5
APK-Signierung
2.6.5.1 Signaturregelungen
2.6.5.2 Signierschlüssel
2.6.6
Installationsprogramm
2.6.6.1 Benutzer im
Installationsprogramm anzeigen
2.6.6.2 APK signieren
2.6.6.3 Installationsort
2.6.6.4 InstallationsApps
2.6.6.5 Tracker blockieren
2.6.6.6 Änderungen anzeigen
2.6.6.7 Im Hintergrund
installieren
2.6.7
Sichern/Wiederherstellen
2.6.7.1 Komprimierungsverfahren
2.6.7.2 Sicherungsoptionen
2.6.7.3 Anwendungen mit Android
KeyStore sichern
2.6.7.4 Verschlüsselung
Im Falle von AES sollte der generierte Schlüssel an einem sicheren Ort
gespeichert werden, z. B. in einem Passwortmanager.2.6.7.5 Sicherungsvolumen
AppManager
innerhalb
des Speicherpfads gespeichert. Wenn der Pfad jedoch mit Storage Access
Framework (SAF) ausgewählt wurde, wird der ausgewählte Pfad oder das
Verzeichnis direkt verwendet.2.6.7.6 Backups importieren
2.6.8
Regeln
2.6.8.1 Sofortige
Komponentensperre
2.6.8.2 Import/Export-Sperrregeln
2.6.8.2.1 Export
2.6.8.2.2 Importieren
2.6.8.2.3 Importieren bestehender
Regeln
2.6.8.2.4 Importieren von Watt
.xml
ist./sdcard/Android/data/com.tuyafeng.watt/files/ifw
2.6.8.2.5 Importieren von Blocker
.json
.2.6.8.3 Alle Regeln löschen
2.6.9
Advanced
2.6.9.1 Ausgewählte Benutzer
2.6.9.2 Gespeichertes
APK-Namensformat
%
(Prozentzeichen) eingeschlossen und unterhalb des Eingabefeldes zu
finden sind. Diese Schlüsselwörter sind:Bezeichnung
. Bezeichnet den Namen
oder die Bezeichnung der Anwendung. Dieser kann je nach Anwendung in der
konfigurierten Sprache lokalisiert werden.Paketname
. Bezeichnet den Namen des
Pakets oder die Anwendungs-ID, den eindeutigen Bezeichner, den jede
Anwendung hat.Version
. Gibt die aktuelle Version
der Anwendung an, die dem Manifest entnommen wurde.Versionscode
. Bezeichnet den
aktuellen Versionscode der Anwendung, der verwendet werden kann, um zwei
Versionen derselben Anwendung zu unterscheiden.mindest notwendiges SDK
.
Bezeichnet das minimale SDK (d. h. die Version des Android-Frameworks),
mit dem die Anwendung arbeiten kann. Diese Daten sind erst seit Android
7 (Nougat) verfügbar.empfohlenes SDK
. Bezeichnet das
SDK, auf das diese Anwendung abzielt. Die Anwendung kann auf höheren
SDKs arbeiten, aber nur im Kompatibilitätsmodus.Datumsangabe
. Bezeichnet die
Uhrzeit und das Datum, an dem die APK exportiert wird.2.6.9.3 Schlüsselspeicher
importieren/exportieren
bks
. Daher werden andere KeyStore wie Java KeyStore (JKS)
oder PKCS #12 nicht unterstützt. Wenn ein Schlüssel aus einem solchen
KeyStore importiert werden muss, sollten die entsprechenden Optionen wie
oben angegeben gewählt werden.2.6.10 Über das Gerät selbst
Scanner-Seite wird angezeigt, nachdem Sie auf die Schaltfläche Scanner in der Registerkarte App-Info geklickt haben. Externe APK-Dateien können auch über Dateimanager, Webbrowser usw. zum Scannen geöffnet werden.
Es wird nach Trackern und Bibliotheken gescannt und die Anzahl der Tracker und Bibliotheken als Zusammenfassung angezeigt. Es zeigt auch Prüfsummen der APK-Datei sowie die Signierzertifikate. Wenn VirusTotal in den Einstellungen konfiguriert ist, versucht es auch, Berichte von VirusTotal abzurufen, oder lädt die APK-Datei hoch, wenn sie sich nicht in der Datenbank befindet.
Disclaimer:
App Manager scannt eine Anwendung nur statisch und ohne Vorurteile. Die Anwendung kann Optionen für die Ablehnung anbieten, oder in einigen Fällen werden bestimmte Funktionen des Trackers von der Anwendung überhaupt nicht genutzt (z. B. F-Droid), oder manche Anwendungen verwenden sie einfach als Platzhalter, um den Ausfall bestimmter Funktionen zu verhindern (z. B. Fennec F-Droid). Die Absicht des Scanners ist es, Ihnen eine Vorstellung davon zu geben, was die APK enthalten könnte. Er sollte als erster Schritt für weitere Untersuchungen angesehen werden.
Ein Klick auf den ersten Punkt (d.h. die Anzahl der Klassen) öffnet eine neue Seite mit einer Liste der Tracker-Klassen für die Anwendung. Alle Klassen können auch durch Anklicken des Menüs Toggle Class Listing angezeigt werden. Eine Vorschau auf jede Klasse kann durch einfaches Klicken auf ein beliebiges Klassenelement angezeigt werden. In Android 8 (Oreo) und später, enthält dies die gesamte SMALI-Version der Klasse und kann mit der entsprechenden Option in Java konvertiert werden.
Hinweis:
Aufgrund verschiedener Einschränkungen ist es nicht möglich, alle Komponenten einer APK-Datei zu scannen. Dies gilt insbesondere, wenn eine APK stark verschleiert ist. Der Scanner prüft auch keine Zeichenketten (oder Website-Signaturen).
Der zweite Punkt listet die Anzahl der Tracker zusammen mit deren Namen auf. Wenn Sie auf diesen Punkt klicken, wird ein Dialog angezeigt, der den Namen der Tracker, die übereinstimmenden Signaturen und die Anzahl der Klassen für jede Signatur. Einige Tracker-Namen können ein 2 vorangestellt, was anzeigt, dass die Tracker in der ETIP Stand-by-Liste stehen d.h. ob es sich um tatsächliche Tracker handelt, wird noch untersucht.
Der dritte Punkt listet die Anzahl der Bibliotheken zusammen mit ihren Namen auf. Die Informationen stammen größtenteils aus dem IzzyOnDroid Repository.
Siehe auch: FAQ: Tracker-Klassen vs. Tracker-Komponenten
Unten auf der Seite befindet sich ein spezieller Punkt, der die Anzahl der fehlenden Signaturen (d. h. der fehlenden Klassen) angibt. Die fehlenden Signaturen sind diejenigen, die AM nicht mit bekannten Bibliotheken abgleichen konnte. Die Zahl selbst hat keine Bedeutung, da viele Bibliotheken Hunderte von Klassen enthalten, aber ein Klick auf das Element öffnet ein Dialogfeld der die Signaturen enthält, was bei der Überprüfung der fehlenden Signaturen hilfreich ist. Diese Funktion ist nur für Personen gedacht, die wissen, was eine fehlende Signatur ist und was damit zu tun ist. Andere Benutzer sollten sie ignorieren.
Interceptor kann verwendet werden, um die Kommunikation zwischen
Anwendungen mit Hilfe von Intent
abzufangen. Er arbeitet
als Man-in-the-Middle zwischen der Quell- und der Zielanwendung. Er
bietet eine funktionsreiche Benutzeroberfläche zur Bearbeitung von
Intent
s.
Warning:
Interceptor funktioniert nur für implicit-Intents, bei denen die App-Komponente nicht angegeben ist.
Siehe auch:
Intent-Filter werden von den Anwendungen verwendet, um die Aufgaben
zu spezifizieren, die sie ausführen können oder die sie mit anderen
Anwendungen ausführen werden. Wenn Sie zum Beispiel eine PDF-Datei mit
einem Dateimanager öffnen, versucht der Dateimanager, die Anwendungen zu
finden, mit denen die PDF-Datei geöffnet werden soll. Um die richtigen
Anwendungen zu finden, erstellt der Dateimanager einen Intent mit
Filtern wie dem MIME-Typ und bittet das System, die Anwendungen
abzurufen, die diesen Filter öffnen können. Das System durchsucht das
Manifest der installierten Anwendungen nach dem Filter und listet die
Anwendungskomponenten auf, die in der Lage sind, diesen Filter (in
unserem Fall das PDF) zu öffnen. Daraufhin öffnet entweder der
Dateimanager die gewünschte Anwendungskomponente von selbst oder es wird
eine vom System bereitgestellte Option verwendet, um sie zu öffnen. Wenn
mehrere Anwendungskomponenten in der Lage sind, das Dokument zu öffnen,
und keine Standardeinstellung festgelegt ist, erhalten Sie
möglicherweise eine Aufforderung, die richtige Anwendungskomponente
auszuwählen. Aktion gibt die auszuführende allgemeine Aktion an, z. B.
Daten sind ursprünglich als URI (Uniform Resource Identifier)
bekannt, die in RFC
2396 definiert sind. Es kann sich um Weblinks, Dateispeicherorte
oder eine spezielle Funktion namens Inhalt handeln. Inhalte
sind eine Android-Funktion, die von den Inhaltsanbietern verwaltet wird. Daten
sind oft mit einem MIME-Typ
verbunden. Beispiele: MIME-Typ des Feldes Daten. Wenn das
Datenfeld zum Beispiel auf Dies ist ähnlich wie Aktion in dem
Sinne, dass es auch vom System zum Filtern von Anwendungskomponenten
verwendet wird. Dies hat keine weiteren Vorteile. Im Gegensatz zu
Aktion kann es mehr als eine Kategorie geben. Wenn Sie auf die
Schaltfläche plus neben dem Titel klicken, können Sie weitere
Kategorien hinzufügen. Markierungen sind nützlich, um zu bestimmen, wie sich das System
während des Starts oder nach dem Start einer Aktivität verhalten soll.
Dies sollte nicht berührt werden, da es ein gewisses technisches
Hintergrundwissen erfordert. Die Schaltfläche plus neben dem
Titel kann verwendet werden, um eine oder mehrere Markierungen
hinzuzufügen. Extras sind die Schlüssel-Wert-Paare, die für die Bereitstellung
zusätzlicher Informationen für die Zielkomponente verwendet werden.
Weitere Extras können über die Schaltfläche plus neben dem
Titel hinzugefügt werden. Stellt den gesamten Inhalt als URI dar (z. B.
2.8.1.1 Aktion
android.intent.action.VIEW
. Anwendungen deklarieren oft die
relevanten Aktionen in der Manifestdatei an, um die gewünschten Intents
abzufangen. Die Aktion ist besonders nützlich für Broadcast Intent, wo
sie eine wichtige Rolle spielt. In anderen Fällen dient sie als erste
Möglichkeit, die relevanten Anwendungskomponenten herauszufiltern.
Generische Aktionen wie android.intent.action.VIEW
und
android.intent.action.SEND
werden von vielen Anwendungen
verwendet. Daher kann diese Einstellung allein viele
Anwendungskomponenten abdecken.2.8.1.2 Daten
http://search.disroot.org/?q=URI%20in%20Android%20scheme&categories=general&language=en-US
https://developer.android.com/reference/android/net/Uri
file:///sdcard/AppManager.apk
mailto:email@example.com
content://io.github.muntashirakon.AppManager.provider/23485af89b08d87e898a90c7e/AppManager.apk
2.8.1.3 MIME-Typ
file:///sdcard/AppManager.apk
eingestellt ist, kann der zugehörige MIME-Typ
application/vnd.android.package-archive
sein.2.8.1.4 Kategorien
2.8.1.5 Flaggen
2.8.1.6 Extras
2.8.1.7 URI
intent://…
). Einige Daten können nicht in eine Zeichenkette
umgewandelt werden, und werden daher hier möglicherweise nicht
angezeigt.
Listet alle Aktivitätskomponenten auf, die dem Zweck entsprechen. Dies wird intern vom System bestimmt (und nicht vom App Manager). Die Schaltfläche "Starten" neben jeder Komponente kann verwendet werden, um sie direkt vom App Manager aus zu starten.
Setzt das Objekt in seinen Ausgangszustand zurück.
Sendet den bearbeiteten Inhalt erneut an die Zielanwendung. Dies kann eine Liste von Anwendungen öffnen, in der die gewünschte Anwendung ausgewählt werden muss. Das von der Zielanwendung erhaltene Ergebnis wird an die Quellanwendung gesendet. Daher weiß die Quellanwendung nicht, ob es einen Man-in-the-Middle gab.
Viele reine Root-Funktionen können weiterhin genutzt werden, indem ADB über TCP aktiviert wird. Hierfür ist ein PC oder Mac mit installierten Android Plattform-Tools und ein Android-Telefon mit aktivierten Entwickleroptionen und USB-Debugging.
Root-Benutzer:
Wenn dem App Manager die Superuser-Berechtigung erteilt wurde, kann er bereits ohne Probleme privilegierten Code ausführen. Daher brauchen Root-Benutzer ADB über TCP nicht zu aktivieren. Wenn Sie ADB over TCP trotzdem verwenden wollen, müssen Sie die Superuser-Berechtigung für App Manager widerrufen und Ihr Gerät neu starten. Es kann sein, dass Sie die Meldung working on ADB mode ohne Neustart sehen, aber das ist nicht ganz richtig. Der Server (der als Schnittstelle zwischen System und App Manager dient) wird immer noch im Root-Modus ausgeführt. Dies ist ein bekanntes Problem und wird in einer zukünftigen Version von App Manager behoben.
Siehe auch: FAQ: ADB-over-TCP
Developer options is located in Android Settings, either directly near the bottom of the page (in most ROMs) or under some other settings such as System (Lineage OS, Asus Zenfone 8.0+), System > Advanced (Google Pixel), Additional Settings (Xiaomi MIUI, Oppo ColorOS), More Settings (Vivo FuntouchOS), More (ZTE Nubia). Unlike other options, it is not visible until explicitly enabled by the user. If developer options is enabled, you can use the search box in Android Settings to locate it as well.
This option is available within Android Settings as well but like the location of the developer options, it also differs from device to device. But in general, you have to find Build number (or MIUI version for MIUI ROMs and Software version for Vivo FuntouchOS, Version for Oppo ColorOS) and tap it at least 7 (seven) times until you finally get a message saying You are now a developer (you may be prompted to insert pin/password/pattern or solve captchas at this point). In most devices, it is located at the bottom of the settings page, inside About Phone. But the best way to find it is to use the search box.
After locating the
developer options, enable Developer option (if not
already). After that, scroll down a bit until you will find the option
USB debugging. Use the toggle button on the right-hand
side to enable it. At this point, you may get an alert prompt where you
may have to click OK to actually enable it. You may also have
to enable some other options depending on device vendor and ROM. Here
are some examples: Enable USB debugging (Security settings) as
well. Enable Allow ADB debugging in charge only mode as
well. When connecting to your PC or Mac, you may get a prompt saying
Allow access to device data? in which case click
YES, ALLOW ACCESS. Notice: Often the USB debugging mode could be disabled
automatically by the system. If that’s the case, repeat the above
procedure. Depending on the device and the version of operating system, you have
to enable Disable Permission Monitoring, or USB
debugging (Security settings) along with Install via
USB. Make sure you have USB tethering enabled. In case USB Debugging is greyed out, you can do the
following: Make sure you enabled USB debugging before connecting your phone
to the PC or Mac via USB cable Enable USB tethering after connecting to PC or Mac via USB
cable (For Samsung) If your device is running KNOX, you may have to
follow some additional steps. See official documentations or consult
support for further assistant3.1.2.1 Xiaomi (MIUI)
3.1.2.2 Huawei (EMUI)
3.1.2.3 Realme
3.1.2.4 LG
3.1.2.5 Fehlersuche
In order to enable ADB over TCP, you have to set up ADB in your PC or
Mac. Lineage OS users can skip to §3.1.4.1. Download the latest version of Android
SDK Platform-Tools for Windows Extract the contents of the zip file into any directory (such as
Open Command Prompt or
PowerShell from this directory. You can do it manually
from the start menu or by holding Download the latest version of Android
SDK Platform-Tools for macOS Extract the contents of the zip file into a directory by clicking
on it. After that, navigate to that directory using Finder and
locate Open Terminal using Launchpad or
Spotlight and drag-and-drop Tip: If you are not afraid to use command line, here’s a one liner: After that, you can simply type Open your favourite terminal emulator. In most GUI-distros, you
can open it by holding Run the following command: If it is successful, you can simply type 3.1.3.1 Windows
C:\
adb
) and navigate to that
directory using ExplorerShift
and Right clicking
within the directory in File Explorer and then clicking either
on Open command window here or on Open PowerShell window
here (depending on what you have installed). You can now access ADB
by typing adb
(Command Prompt) or ./adb
(PowerShell). Do not close this window yet3.1.3.2 macOS
adb
adb
from the
Finder window into the Terminal window. Do not close
the Terminal window yetcd ~/Downloads && curl -o platform-tools.zip -L \
&& \
https://dl.google.com/android/repository/platform-tools-latest-darwin.zip unzip platform-tools.zip && rm platform-tools.zip && cd platform-tools
./adb
in the in same
Terminal window to access ADB.3.1.3.3 Linux
Control
, Alter
and
T
at the same timecd ~/Downloads && curl -o platform-tools.zip -L \
&& \
https://dl.google.com/android/repository/platform-tools-latest-linux.zip unzip platform-tools.zip && rm platform-tools.zip && cd platform-tools
./adb
in
the in same terminal emulator window or type
~/Downloads/platform-tools/adb
in any terminal emulator to
access ADB.
Lineage OS (or its derivatives) users can directly enable ADB over TCP using the developer options. To enable that, go to the Developer options, scroll down until you find ADB over Network. Now, use the toggle button on the right-hand side to enable it and skip to §3.1.4.3.
For other ROMs, you can do this using the command
prompt/PowerShell/terminal emulator that you’ve opened in the step 3 of
the previous section. In this section, I will use adb
to
denote ./adb
, adb
or any other command that
you needed to use based on your platform and software in the previous
section.
Connect your device to your PC or Mac using a USB cable. For some devices, it is necessary to turn on File transfer mode (MTP) as well
To confirm that everything is working as expected, type
adb devices
in your terminal. If your device is connected
successfully, you will see something like this:
List of devices attached
xxxxxxxx device
Notice:
In some Android phones, an alert prompt will be appeared with a message Allow USB Debugging in which case, check Always allow from this computer and click Allow.
Finally, run the following command to enable ADB over TCP:
adb tcpip 5555
Danger:
You cannot disable developer options or USB debugging after enabling ADB over TCP.
After enabling ADB over TCP, relaunch App Manager. App Manager should detect ADB mode automatically. If it cannot, you can change the mode of operation to ADB over TCP in the settings page. There, you can also verify whether App Manager has correctly detected ADB as indicated by the inferred mode.
Notice:
In some Android devices, the USB cable is needed to be disconnected from the PC before connecting to App Manager.
Warning:
ADB over TCP will be disabled after a reboot. In that case, you have to follow §3.1.4.2 again.
Lineage OS users:
You can turn off ADB over Network in developer options, but turning off this option will also stop App Manager’s remote server. So, turn it off only when you’re not going to use App Manager in ADB over TCP mode.
If you are running Android 11 or later and capable of connecting to a Wi-Fi network for, at least, a few moments, Wireless Debugging is the recommended approach as it offers more protection than ADB over TCP. It requires two steps:
ADB pairing. The initial and a bit complex step for a novice user. Fortunately, this step is not required all the time.
Connecting to ADB. The final step which needs to be carried out every time you reboot your phone.
In the Developer options page, find Wireless debugging and click to open it. In the new page, turn on Use wireless debugging. Depending on your configuration, you might see a dialog prompt asking you to verify your decision. If that is the case, click Allow.
Tip:
For an easy access, you might want to add Wireless debugging in the notification tiles section. To do this, find Quick settings developer tiles in the Developer options page and click to open it. In the new window, enable Wireless debugging. However, this option is unavailable in most operating systems.
Keeping the Wireless debugging page open, go to the Recents page either by swiping up or by using the dedicated navigation button, and click on the Settings logo to enable Split screen. It will wait for you to select or launch another application: Launch or select App Manager.
Now, in App Manager and navigate to Settings and then enable Wireless debugging in Mode of operation. After a few moments, App Manager will ask you to either connect or pair ADB. Select pair.
In the Wireless debugging page (now should be on top among the splits), select Pair device with pairing code. At this, a dialog prompt will be displayed. Note down the pairing code but DO NOT close the dialog prompt or the window.
Finally, in App Manager, insert the pairing code and click pair. The port number should be detected automatically. If it cannot, you have to insert the port number as well.
If the pairing is successful, it will display a successful message at the bottom, and the dialog prompt in the Wireless debugging page will be dismissed automatically, and you will be able to see App Manager listed as an ADB client.
Notice:
If you do not use App Manager in ADB mode for a while (depending on devices), App Manager might be removed from the list. In that case, you have to repeat the above procedure.
App Manager should be able to connect to ADB automatically if the mode of operation is set to auto, ADB over TCP or Wireless debugging. If that is not the case, select Wireless debugging in the settings page. If App Manager fails to detect or connect to ADB, it will display a dialog prompt to connect or pair ADB. Select connect.
Now, navigate to the Wireless debugging page in Android settings, and note down the port number displayed in the page. In App Manager’s dialog prompt, replace the port number with the one that you have noted earlier, and click connect.
Once a connection has been established, you can safely disable Wireless debugging in Android settings.
Caution:
Never disable USB Debugging or any other additional options described in §3.2.1. If you do this, the remote server used by App Manager will be stopped, and you may have to start all over again.
App Manager verfügt über ein modernes, fortschrittliches und einfach zu bedienendes Sicherungs-/Wiederherstellungssystem, das von Grund auf neu implementiert wurde. Dies ist wahrscheinlich die einzige App, die nicht nur die App oder ihre Daten wiederherstellen kann, sondern auch die Berechtigungen und Regeln, die Sie im App Manager konfiguriert haben. Sie können auch wählen, ob Sie eine App mehrfach (mit benutzerdefinierten Namen) oder für alle Benutzer sichern möchten.
Sichern/Wiederherstellen ist ein Teil vonBatch-Operationen. Es befindet sich
auch im Optionsmenü in
der Registerkarte Anwendungsinfo.
Clicking on Backup/Restore opens the Backup
Options. Backups are located at
/storage/emulated/0/AppManager
by default. You can
configure custom backup location in the settings page in which case the
backups will be located at the AppManager
folder in the
selected volume.
Hinweis:
Wenn eine oder mehrere ausgewählte Anwendungen keine Sicherung haben, werden die Optionen Wiederherstellen and Sicherung löschen nicht angezeigt.
Mit den Backup-Optionen (intern als Backup-Flags bezeichnet) können Sie die Backups im Handumdrehen anpassen. Die Anpassungen werden jedoch nicht für zukünftige Sicherungen gespeichert. Wenn Sie diesen Dialog anpassen möchten, verwenden Sie Backup-Optionen in der Einstellungen-Seite.
Eine vollständige Beschreibung der Sicherungsoptionen finden Sie weiter unten:
APK-Dateien. Whether to back up the APK files.
This includes the base APK file along with the
split APK
files if they exist.
Internal data. Ob die APK-Dateien gesichert
werden sollen. Dies umfasst die Datei Basis-APK sowie die
Dateien Split-APK
, falls vorhanden.
External data. Whether to back up data directories located in the internal memory as well as SD Card (if exists). External data directories often contain non-essential app data or media files (instead of using the dedicated media folder) and may increase the backup size. However, it might be essential for some apps. Although it isn’t checked by default (as it might dramatically increase the size of the backups), you may have to check it in order to ensure a smooth restore of your backups.
Caution:
Internal data folders should always be backed up if you are going to back up the external data folders. However, it could be useful to back up only the external folders if the app in question downloads a lot of assets from the Internet.
OBB and media. Whether to back up or restore the OBB and the media directories located in the external storage or the SD Card. This is useful for games and the graphical software which actually use these folders.
Cache. Android apps have multiple cache directories located at every data directories (both internal and external). There are two types of cache: cache and code cache. Enabling this option excludes both cache directories from all the data directories. It is generally advised to exclude cache directories since most apps do not clear the cache regularly (for some reason, the only way an app can clear its cache is by deleting the entire cache directory) and usually handled by the OS itself. Apps such as Telegram may use a very large cache (depending on the storage space) which may dramatically increase the backup size. When it is disabled, AM also ignores the no_backup directories.
Extras. Backup/restore app permissions, net policy, battery optimization, SSAID, etc., enabled by default. Note that, blocking rules are applied after applying the extras. So, if an item is present in both places, it will be overwritten (i.e., the one from the blocking rules will be used).
Rules. This option lets you back up blocking rules configured within App Manager. This might come in handy if you have customised permissions or block some components using App Manager as they will also be backed up or restored when you enable this option.
Backup Multiple. Whether this is a multiple backup. By default, backups are saved using their user ID. Enabling this option allows you to create additional backups. These backups use the current date-time as the default backup name, but you can also specify custom backup name using the input field displayed when you click on the Backup button.
Ausgewählte Anwender. Sicherung oder Wiederherstellung für die ausgewählten Benutzer statt nur für den aktuellen Benutzer. Diese Option wird nur angezeigt, wenn das System mehr als einen Benutzer hat.
Signaturprüfungen überspringen. Beim Erstellen
eines Backups werden die Prüfsummen jeder Datei (sowie die Signier-
Zertifikat(e) der APK-Basisdatei) generiert und in der Datei
checksums.txt
gespeichert. Wenn Sie die Sicherung
wiederherstellen, werden die Prüfsummen erneut generiert und mit den in
der genannten Datei gespeicherten Prüfsummen abgeglichen. Wenn Sie diese
Option aktivieren, werden die Signaturprüfungen ausgeschaltet. Diese
Option wird nur bei der Wiederherstellung eines Backups angewendet.
Während der Sicherung werden die Prüfsummen unabhängig von dieser Option
generiert.
Caution:
Sie sollten diese Option immer deaktivieren, um sicherzustellen, dass Ihre Sicherungen nicht von Anwendungen Dritter verändert werden. Dies würde jedoch nur funktionieren, wenn Sie die Verschlüsselung aktiviert haben.
Siehe auch: Einstellungen: Verschlüsselung
Backup respects all the backup options except Skip signature checks. If base backups (i.e., backups that don’t have the Backup Multiple option) already exist, you will get a warning as the backups will be overwritten. If Backup Multiple is set, you have an option to input the backup name, or you can leave it blank to use the current date-time.
Restore respects all the backup options and will fail if APK files option is set, but the backup doesn’t contain such backups or in other cases, if the app isn’t installed. When restoring backups for multiple packages, you can only restore the base backups (see backup section for an explanation). However, when restoring backups for a single package, you have the option to select which backup to restore. If All users option is set, AM will restore the selected backup for all users in the latter case but in the former case, it will restore base backups for the respective users.
Notice:
Apps that use storage access framework (SAF), SSAID or Android KeyStore works properly only after an immediate restart.
Delete backup only respects All users option and when it is selected, only the base backups for all users will be deleted with a prompt. When deleting backups for a single package, another dialog will be displayed where you can select the backups to delete.
It is possible to trigger profiles configured inside App Manager via
third-party applications such as Automation or
Tasker. Traditionally, The activity
It has two primary extras required in all conditions. The key names,
data types are all follows: App Manager current support a single feature, namely
In order to trigger a profile, Intent
s are used to
trigger such operations.3.4.2
Configuring tasks
io.github.muntashirakon.AppManager.crypto.auth.AuthFeatureDemultiplexer
is responsible for handling all the automations. Sending an intent to
the activity lets App Manager perform the designated operation by
redirecting the Intent
to the designated activity or
service.3.4.2.1 Required extras
auth
. (String value) The
authorization key as described in the earlier section.feature
. (String value) Name of the
feature. Supported features are described in the next section.3.4.3
Features
profile
.3.4.4
Triggering a profile
feature
must have the
value profile
. In addition, the following extras can be
included:prof
. (String value – required) The
name of the profile as displayed in the Profiles page.state
. (String value – optional)
State of the profile – currently on
or off
–
as specified in the documentation. If this extra is not set, App Manager
will display a prompt where a state must be selected. Therefore, for
complete automation, this option should be set.
Short for Network policy or network policies. It is usually located in the Android settings under Mobile data & Wifi section in the app info page of an app. Not all policies are guaranteed to be included in this page (e.g. Samsung), and not all settings are well-understood due to lack of documentation. App Manager can display all the net policies declared in the NetworkPolicyManager. Policies unknown to App Manager will have a Unknown prefix along with the policy constant name and number in the hexadecimal format. Unknown policies should be reported to App Manager for inclusion.
Net policy allows a user to configure certain networking behaviour of an app without modifying the ip tables directly and/or running a firewall app. However, the features it offers largely depend on Android version and ROM. A list of known net policies are listed below:
None or
POLICY_NONE
: (AOSP) No specific network
policy is set. System can still assign rules depending on the nature of
the app.
Reject background data or
POLICY_REJECT_METERED_BACKGROUND
: (AOSP)
Reject network usage on metered networks when the application is in
background.
Allow background data when Data Saver is on or
POLICY_ALLOW_METERED_BACKGROUND
: (AOSP)
Allow metered network use in the background even when data saving mode
is enabled.
Reject cellular data or
POLICY_REJECT_CELLULAR
(Android 11+) or
POLICY_REJECT_ON_DATA
(up to Android 10):
(Lineage OS) Reject mobile/cellular data. Signals network unavailable to
the configured app as if the mobile data is inactive.
Reject VPN data or
POLICY_REJECT_VPN
(Android 11+) or
POLICY_REJECT_ON_VPN
(up to Android 10):
(Lineage OS) Reject VPN data. Signals network unavailable to the
configured app as if the VPN is inactive.
Reject Wi-Fi data or
POLICY_REJECT_WIFI
(Android 11+) or
POLICY_REJECT_ON_WLAN
(up to Android 10):
(Lineage OS) Reject Wi-Fi data. Signals network unavailable to the
configured app as if the device is not connected to a Wi-Fi
network.
Disable network access or
POLICY_REJECT_ALL
(Android 11+) or
POLICY_NETWORK_ISOLATED
(up to Android
10): (Lineage OS) Reject network access in all circumstances. This is
not the same as enforcing the other three policies above, and is the
recommended policy for dodgy apps. If this policy is enforced, there is
no need to enforce the other policies.
POLICY_ALLOW_METERED_IN_ROAMING
:
(Samsung) Possibly allow metered network use during roaming. Exact
meaning is currently unknown.
POLICY_ALLOW_WHITELIST_IN_ROAMING
:
(Samsung) Possibly allow network use during roaming. Exact meaning is
currently unknown.
Note:
Corresponding Lineage OS patches are as follows:
Activities, services, broadcast receivers (or only receivers) and content providers (or only providers) are jointly called application components. More technically, they all inherit the ComponentInfo class and can be launched via Intent.
App Manager typically blocks application components (or tracker components) using a method called Intent Firewall (IFW), it is superior to other methods such as pm (PackageManager), Shizuku or any other method that uses the package manager to enable or disable the components. If a component is disabled by the latter methods, the application itself can detect that the component is being blocked and can re-enable it as it has full access to its own components. (Many deceptive applications actually do this in order to keep the tracker components unblocked.) On the other hand, IFW is a true firewall and the application cannot detect if its components are being blocked. App Manager uses the term block rather than disable for this reason.
Even IFW has some limitations which are primarily applicable for the system applications:
The application in question is whitelisted by the system i.e. the system cannot function properly without these applications and may cause random crashes. These applications include but not limited to Android System, System UI, Phone Services. They will continue to work even if they are disabled or blocked.
Another system application or system process has activated a specific component of the application in question via interprocess communication (IPC). In this case, the component will be activated regardless of blocking status or even if the entire application is disabled. If there is such a system application that is not needed, the only way to prevent it from running is by getting rid of it.
No. But the application components blocked by the system or any other tools are displayed in the component tabs. These rules can be imported from Settings. However, it is not possible for App Manager to distinguish the components blocked by the third-party tools and components blocked by the system. Therefore, the applications listed in the import page should be selected with care.
App Manager blocks the components again if requested. In case of unblocking, they will be reverted to the default state as specified in the manifest of the application. But if the components were blocked by MyAndroidTools (MAT) with IFW method, they will not be unblocked by App Manager as it uses a different format. To fix this issue, the rules have to be imported from Settings at first, in which case MAT’s configurations will be permanently removed.
When you block a component in the App Details page, the blocking is not applied by default. It is only applied when you apply blocking using the Apply rules option in the top-right menu. If you enable instant component blocking, blocking will be applied as soon as you block a component. If you choose to block tracker components, however, blocking is applied automatically regardless of this setting. You can also remove blocking for an application by simply clicking on Remove rules in the same menu in the App Details page. Since the default behaviour gives you more control over applications, it is better to keep instant component blocking option disabled.
All application components are classes but not all classes are components. In fact, only a few of the classes are components. That being said, scanner page displays a list of trackers along with the number of classes, not just the components. In all other pages, trackers and tracker components are used synonymously to denote tracker components, i.e. blocking tracker means blocking tracker components, not tracker classes.
Info:
Tracker classes that are not components cannot be blocked. They can only be removed by editing the application itself.
Unfortunately, yes. This is because the ADB daemon, the process responsible for ADB connection, is also restarted after a reboot, and it does not re-enable ADB over TCP.
ADB has limited number of permissions and controlling application components is not one of them. However, the components of a test-only app can be controlled via ADB. If App Manager detects such an application, it enables the blocking options automatically.
Die unterstützten Funktionen werden im ADB-Modus automatisch aktiviert. Zu den unterstützten Funktionen gehören Deaktivieren, erzwungenes Anhalten, Löschen von Anwendungsdaten, Gewähren oder Entziehen von App-Ops und Berechtigungen usw. Es ist auch möglich, Anwendungen zu installieren oder Anwendungen ohne Aufforderung durch das System zu installieren oder zu deinstallieren.
Ja. AM kann keine Systemeinstellungen ohne Root oder ADB over TCPändern.
Tracker und Bibliotheken werden manuell aktualisiert, bevor eine neue Version veröffentlicht wird.
No, APKs aren’t deleted by App Manager after they are installed.
Die Verwendung von versteckten APIs und die Ausführung von privilegiertem Code durch App Manager ist jetzt viel komplexer und kann nicht mit anderen Anwendungen von Drittanbietern wie z. B. Shizuku. Hier sind einige Gründe für die Nichtberücksichtigung von Shizuku (das jetzt die Apache 2.0 Lizenz hat) durch den App Manager:
Shizuku war ursprünglich unfrei, was mich dazu veranlasste, einen ähnlichen Ansatz für App Manager zu verwenden, um sowohl root und ADB zu nutzen
App Manager unterstützt bereits sowohl ADB als auch Root, was in einigen Fällen leistungsfähiger ist als Shizuku
Sich für die wichtigsten Funktionen auf eine Drittanbieter-App zu verlassen, ist keine gute Designentscheidung
Die Integration von Shizuku wird die Komplexität des App Managers erhöhen.
Bei Bloatware handelt es sich um überflüssige Anwendungen, die vom Hersteller oder OEM geliefert werden und in der Regel Systemanwendungen sind. Diese Anwendungen werden oft verwendet, um Benutzer zu verfolgen und Benutzerdaten zu sammeln, die sie möglicherweise gewinnbringend verkaufen. System-Apps müssen keine Erlaubnis einholen, um auf Geräteinformationen, Kontakte und Nachrichtendaten sowie auf andere Nutzungsdaten wie Ihre Gewohnheiten und alles, was Sie auf Ihrem gemeinsamen Speicher speichern, zugreifen zu können.
Die Bloatware umfassen auch Google-Apps (wie Google Play Services, Google Play Store, Gmail, Google, Messages, Dialer, Kontakte), Facebook-Apps (die Facebook-App besteht aus vier oder fünf Apps), Facebook Messenger, Instagram, Twitter und viele andere Apps, die ebenfalls Nutzer verfolgen und/oder Nutzerdaten ohne Zustimmung sammeln können, da sie alle System-Apps sind. Sie können einige Berechtigungen in den Android-Einstellungen deaktivieren, aber seien Sie sich bewusst, dass die Android-Einstellungen fast jede Berechtigung versteckt, die ein Sicherheitsexperte als potenziell gefährlich bezeichnen würde.
Wenn es sich bei der Bloatware um Benutzeranwendungen handelt, können Sie sie entweder über die Android-Einstellungen oder über AM deinstallieren. Die Deinstallation von System- Apps ist ohne Root-Berechtigung nicht möglich. Sie können System-Apps auch mit ADB deinstallieren, aber das funktioniert möglicherweise nicht bei allen Apps. AM kann System-Apps mit Root oder ADB deinstallieren (letzteres natürlich mit gewissen Einschränkungen), aber diese Methoden können die Systemanwendungen nicht vollständig entfernen, da sie sich in der Partition system befinden, die eine schreibgeschützte Partition ist. Wenn Sie über Root verfügen, können Sie diese Partition wieder einhängen, um diese Anwendungen manuell zu entfernen, aber dies wird Over the Air (OTA)-Updates unterbrechen, da die Daten in der Systempartition geändert wurden. Es gibt zwei Arten von Updates, Delta- (eine kleine Version, die nur die Änderungen zwischen zwei Versionen enthält) und vollständige Updates. Sie können weiterhin vollständige Updates anwenden, aber die Bloatware wird erneut installiert, und Sie müssen sie daher erneut löschen. Außerdem bieten nicht alle Hersteller vollständige Aktualisierungen an.
Eine andere Lösung besteht darin, diese Apps entweder über die Android-Einstellungen (No-Root) oder AM zu deaktivieren, aber bestimmte Dienste können weiterhin im Hintergrund laufen, da sie von anderen Systemanwendungen unter Verwendung von Interprozesskommunikation (IPC) gestartet werden können. Eine mögliche Lösung ist es, alle Bloatware zu deaktivieren, bis der Dienst endgültig beendet ist (nach einem Neustart). Aufgrund der starken Änderungen an den Android-Frameworks durch die Hersteller kann das Entfernen oder Deaktivieren bestimmter Bloatware jedoch zum Absturz der System-UI oder sogar einen Bootloop verursachen, was zu einem (Soft-)Bricking Ihres Geräts führt. Sie können im Internet suchen oder andere Benutzer befragen um mehr darüber herauszufinden, wie Sie Ihr Gerät debloaten können.
Ab v2.5.19 verfügt AM über eine neue Funktion namens Profile. Die Seite Profile bietet die Möglichkeit, neue Profile aus einer der Voreinstellungen zu erstellen. Die Voreinstellungen bestehen aus Debloating-Profilen, die als Ausgangspunkt für die Überwachung, Deaktivierung und Entfernung von Bloatware von einem proprietären Android-Betriebssystem.
Hinweis:
In den meisten Fällen können Sie Ihr Gerät nicht vollständig debloaten. Daher empfiehlt es sich, ein benutzerdefiniertes ROM zu verwenden, wie Graphene OS, Lineage OS oder deren Derivate, die frei von Bloatware sind.
AM unterstützt derzeit das Sperren von Aktivitäten, Broadcast-Empfängern, Inhaltsanbietern, Diensten, App-Ops und Berechtigungen, und in Zukunft werde ich möglicherweise weitere Blockierungsoptionen hinzufügen. Um die Portabilität zu erhöhen, ist es notwendig, alle diese Daten zu importieren/exportieren. dieser Daten.
Die Pflege einer Datenbank sollte die beste Wahl sein, wenn es um die
Speicherung von Daten geht. Im Moment werden mehrere
tsv
-Dateien wobei jede Datei den Namen des Pakets und eine
.tsv
-Erweiterung hat. Die Datei/Datenbank wird
abgefragt/verarbeitet durch die Klasse
RegelSpeicherManager
. Aufgrund dieser Abstraktion sollte es
in Zukunft einfacher sein, auf Datenbank- oder verschlüsselte
Datenbanksysteme zu wechseln, ohne das Design des gesamten Projekts zu
ändern. Derzeit werden alle Konfigurations Dateien unter
/data/data/io.github.muntashirakon.AppManager/Files/conf
gespeichert.
Das folgende Format wird intern in App Manager verwendet und ist nicht mit dem externen Format kompatibel.
<Name> <Typ> <Modus>|<Komponente_Status>|<ist_gewährt>
Hier:
<Name>
– Name der Komponente/Zulassung/App-Op
(im Falle einer App-Op kann es sich um einen String oder eine ganze Zahl
handeln)
<Typ>
– Eines der Elemente
ACTIVITY
, RECEIVER
, PROVIDER
,
SERVICE
, App_OP
,
PERMISSION
<Modus>
– (Für app ops) Die zugehörige mode constant
<Komponente_Status>
– (Für Komponenten)
Komponentenstatus
wahr
– Die Komponente wurde angewendet (der Wert
wahr
wird aus Kompatibilitätsgründen beibehalten)
falsch
– Die Komponente wurde noch nicht angewendet,
wird aber in Zukunft angewendet (der Wert falsch
wird aus
Kompatibilitätsgründen beibehalten)
freigeschaltet
– Die Komponente soll freigegeben
werden
<ist_gewährt>
– (Für Berechtigungen) Ob die
Berechtigung erteilt oder entzogen ist
Externes Format wird zum Importieren oder Exportieren von Regeln in App Manager verwendet.
<Paketname> <Komponentenname> <Typ> <Modus>|<Komponentenstatus>|<ist_gewährt>
Das Format ist im Wesentlichen dasselbe wie oben, mit Ausnahme des ersten Elements, das der Name des Pakets ist.
Vorsicht:
Die exportierten Regeln haben ein anderes Format als die internen Regeln und sollten nicht direkt in die Datei conf-Ordner kopiert werden.
App Manager v3.1.0 comes with a few new features and a lot of
improvements. Visit Settings
> About > Version/Changelog for details. App Manager now targets Android 13 which means most issues in Android
12 and 13 has been addressed, including SSAID and SAF issues as well as
monochrome icons and other theming issues. KeyStore backup/restore not working in Android 12 and later. Enable/disable is replaced with freeze/unfreeze to allow greater
control on the behaviours of an app. It supports suspend, disable and
hide functionalities which can be controlled at Settings
> Rules > Default freezing method. In order to make it easy to
freeze or unfreeze an app, shortcuts can also be created from the App
Info tab by long clicking on the freeze or unfreeze button. In the Main page, it is now possible to export the list of apps in
either XML or Markdown format using batch operations. In the future, the
XML file may also be imported to App Manager. App Manager now fully supports encrypting backups using ECC in
addition to offering AES, RSA and OpenPGP. Two new languages are added: Korean and Romanian. In the main page, more sorting and filtering options are added.
Sorting options include sorting the apps by total size, total data
usage, launch count, screen time and last usage time. Filtering options
include filtering the apps having at least one item in the Android
KeyStore, filtering apps with URIs granted via SAF, and filtering apps
with SSAID. Fixed various issues with ADB pairing, handled incomplete USB
debugging. Some rooting methods cannot allow interprocess communication
via Binder. In those cases, ADB mode is used as a fallback method by
enabling it automatically if possible. When possible, App Manager will be able to display apps from work
profile in no-root mode in addition to allowing basic operations such as
launching the app or navigating to the system settings. For backups, it
is now possible to restore backups for other users, but for work
profile, some apps may only work properly after re-enabling the work
profile. In the installer page, selecting All users will now
install the app for all users instead of only the current user. Finally,
in the app info tab, current app can be installed in another profile
using the Install for… option available in the three-dots menu.
This is analogous to the Explorer can now open DEX and JAR files in addition to APK files.
Several sorting options as well as folder options are also added as the
list options. In app info tab, a new tag called WX is added. It is displayed in
Android 10 and later if the application targets Android 9 or earlier. It
indicates W^X
violation which allows the app to execute arbitrary executable files
either by the modification of executables embedded within the app or by
downloading them from the Internet. App ops are now managed automatically to avoid various app ops
related crashes in various platforms. This will also lessen the amount
of crashes in an unsupported operating system. In the Main page, enabled batch uninstallation in no-root mode. Enabled advanced searching. Searching now matches not only app labels
but also package names. Copy the intercepted Intent as am command which can be run from
either an ADB shell or a terminal using root with the same
effectiveness. Explicitly handle the Internet permission which is a runtime
permission in the OS. Fixed permission denied issues in the installer due to a framework
issue introduced in MIUI 12.5. Fixed crashes in the Interceptor page due to a framework issue
introduced in Android 11. Improved Java-Smali conversion by including all the subclasses
during conversion Improved scanning performance in the Scanner page Improved updating the list of apps in the Main page Scan all the available paths to detect systemless-ly installed
system apps6.1.1
Android 13 support
6.1.1.0.1 Known issue
6.1.2
Introducing
freeze/unfreeze
6.1.3
Export app list
6.1.4
Elliptic Curve Crypography
(ECC)
6.1.5
New languages
6.1.6
More list options
6.1.7
Improved handling
of mode of operation
6.1.8
Handling multiple users
pm install-existing
command,
thereby, making the installation process a lot faster.6.1.9
Explorer enhancements
6.1.10 New tag: WX
6.1.11 App ops management
6.1.12 Batch uninstallation
6.1.13 Running apps
6.1.14 Interceptor
6.1.15 Device-specific changes
6.1.15.0.1 Graphene OS
6.1.15.0.2 MIUI
6.1.15.0.3 Motorola
6.1.16 Others
vacuum
SQLite database before opening it for viewing
or editing.
App Manager v3.0.0 comes with a lot of features and improvements. See
Settings
> Changelog to see a more detailed changelog. Material 3, somewhat similar to Material You, is a
significant improvement over Material Design 2 with support for dynamic
colours in Android 12 and later. In addition, many design changes have
been made in App Manager without any significant changes in the overall
user experience. Switches are still based on Material Design 2 which will be fixed in
a future release. Wireless debugging support has been fully implemented. Head over to
§3.2 for instructions on how
to configure wireless debugging. No-root users: Due to auto-detection feature, startup time might be large for
no-root users when the mode of operation is set to auto.
Instead, no-root users should select no-root instead of
auto. App Manager is fully translated into Indonesian and Italian languages
and can be enabled in settings. Bengali is removed due to lack of
translators. App Explorer can be used to browse the contents of an application.
This includes binary XML files, DEX contents or any other media files.
DEX contents can only be explored in Android Oreo (Android 8) and later.
It’s also possible to convert an It is possible to import backups from discontinued or obsolete
applications such as Titanium Backup, OAndBackup and Swift Backup
(version 3.0 to 3.2). Go to Setting > Backup/restore to find this
option. VirusTotal is a widely used tool to scan files and URLs for viruses.
In the scanner page and in the running apps page, an option to scan
files with VirusTotal has been added. But the option is hidden by
default. To enable the option, it is necessary to obtain an API key from
VirusTotal. Go to Settings > VirusTotal API Key for more
information. Internet feature: This is currently the only feature which require an Internet
connection. If you wish to use any Internet feature that might also be
added in the future, enable Use the Internet in Settings >
Enable/disable features. As the implementation of routine operations is being delayed, an
option to trigger profiles from the external automation software is
added. See §3.4 for instructions on how to
configure profile automation. Application installer includes several improvements including the
ability to downgrade applications in no-root mode, installing multiple
applications at once and blocking trackers after installation. In
Android 12 and later, no-root users can update applications without any
user interactions. It is now possible to configure how App Manager should block a
component. Visit Settings > Rules > Default blocking method for
more information. In the components tab, long clicking the block/unblock
button opens a context menu which allows per-component blocking in a
similar manner. ADB users can also block the components of a Test
only app. In some pages, the search bar supports additional searching which
includes searching via prefix, suffix or even regular expressions. In
the main page, it is also possible to search for applications using the
first letters of each word, e.g. App Manager can be listed by
searching for am. Activity interceptor can be opened directly from the activities tab
by long clicking on the launch button, and similarly, activities can be
launched from the activity interceptor page with or without root, for
any users. Notice: Currently, activities opened via root cannot send the results back to
the original applications. Screen time widget is quite similar to Digital Wellbeing’s widget by
the same name. It displays the total screen time for the day along with
the top three apps from all users. Clear cache widget can be to clear cache from all the applications
directly from the home screen.6.2.1
Material 3 and More
6.2.1.0.1 Known issue
6.2.2
Wireless Debugging
6.2.3
Languages
6.2.4
Introducing App Explorer
.smali
file into
.java
for a better understanding of the reversed code. This
feature, if not needed, can be disabled in Settings > Enable/disable
features.6.2.5
Import Backups
from Other Applications
6.2.6
VirusTotal
6.2.7
Trigger
Profiles from the Automation Software
6.2.8
Improved Application
Installer
6.2.9
Component Blocking
6.2.10 Advanced Searching
6.2.12 Make the Best Use of
Interceptor
6.2.13 Widget: Screen Time
6.2.14 Widget: Clear Cache
Back up/restore feature is now finally out of beta! Read the corresponding guide to understand how it works.
Log viewer is essentially a
front-end for logcat
. It can be used to filter logs by
tag or pid (process ID), or even by custom filters.
Log levels AKA verbosity can also be configured. You can also save,
share and manage logs.
Lock App Manager with the screen lock configured for your device.
You can set any mode for any app ops that your device supports, either from the 1-click ops page or from the app ops tab.
You can now easily add selected apps to an existing profile using the batch operations.
App info tab now has many options, including the ability to change SSAID, network policy (i.e. background network usage), battery optimization, etc. Most of the tags used in this tab are also clickable, and if you click on them, you will be able to look at the current state or configure them right away.
Sort and filter options are now replaced by List Options which is highly configurable, including the ability to filter using profiles.
Interested in knowing about your device in just one page? Go to the bottom of the settings page.
Not interested in all the features that AM offers? You can disable some features in settings.
AM now has more than 19 languages! New languages include Farsi, Japanese and Traditional Chinese.
You can now import external signing keys in AM! For security, App Manager has its own encrypted KeyStore which can also be imported or exported.
Since APKMirror has removed encryption from their APKM files, it’s no longer necessary to decrypt them. As a result, the option to decrypt APKM files has been removed. Instead, this option is now provided by the UnAPKM extension which you can grab from F-Droid. So, if you have an encrypted APKM file and have this extension installed, you can open the file directly in AM.
Profiles finally closes the related
issue. Profiles can be used to execute certain tasks repeatedly
without doing everything manually. A profile can be applied (or invoked)
either from the Profiles page or from
the home screen by creating shortcuts. There are also some presets which
consist of debloating profiles taken from Universal
Android Debloater. Exporting rules and applying permissions are not currently
working. Profiles are applied for all users.6.4.1.0.1 Known limitations
Intent
Intercept works as a man-in-the-middle between source and
destination, that is, when you open a file or URL with another app, you
can see what is being shared by opening it with Interceptor first. You
can also add or modify the intents before sending them to the
destination. Additionally, you can double-click on any exportable
activities in the Activities tab in the App Details page to open them in
the Interceptor to add more configurations. Editing extras is not currently possible.6.4.2.0.1 Known limitation
When I released a small tool called UnAPKM, I promised that similar feature will be available in App Manager. I am proud to announce that you can open APKM files directly in the App Info page or convert them to APKS or install them directly.
App manager now supports multiple users! For now, this requires root or ADB. But no-root support is also being considered. If you have multiple users enabled and click on an app installed in multiple profiles, an alert prompt will be displayed where you can select the user.
Thanks to the contributors, we have one more addition to the language club: French. You can add more languages or improve existing translations at Weblate.
If App Manager crashes, you can now easily report the crash from the notifications which opens the share options. Crashes are not reported by App Manager, it only redirects you to your favourite Email client.
Added support for Android 11. Not everything may work as expected though.
In settings page, you can set install locations such as auto (default), internal only and prefer external.
In settings page, you can also set default APK installer (root/ADB only) instead of App Manager.
In settings page, you can allow App Manager to display multiple users during APK installation.
In settings page, you can choose to sign APK files before installing
them. You can also select which signature scheme to use in the APK
signing option in settings. Currently, only a generic key is used to sign APK files6.4.8.4.1 Known limitation
As promised, it is now possible to select splits. AM also provides
recommendations based on device configurations. If the app is already
installed, recommendations are provided based on the installed app. It
is also possible to downgrade to a lower version without data loss if
the device has root or ADB. But it should be noted that not all app can
be downgraded. Installer is also improved to speed up the installation
process, especially, for root users. If the app has already been
installed and the new (x)apk(s) is newer or older or the same version
with a different signature, AM will display a list of changes similar to
What’s New before prompting the user to install the
app. This is useful if the app has introduced tracker components, new
permissions, etc. Large app can take a long time to fetch app info, and therefore,
it may take a long time display the installation prompt. If the apk is not located in the internal storage, the app has to
be cached first which might also take a long time depending on the size
of the apk.6.5.1.0.1 Known Limitations
Exodus page is now replaced with scanner page. Scanner page contains not only a list of trackers but also a list of used libraries. This is just a start. In the future, this page will contain more in depth analysis of the app.
System Config lists various system configurations and whitelists/blacklists included in Android by either OEM/vendor, AOSP or even some Magisk modules. Root users can access this option from the overflow menu in the main page. There isn’t any official documentation for these options therefore it’s difficult to write a complete documentation for this page. I will gradually add documentations using my own knowledge. However, some functions should be understandable by their name.
Thanks to the contributors, AM now has more than 12 languages. New languages include Bengali, Hindi, Norwegian, Polish, Russian, Simplified Chinese, Turkish and Ukrainian.
More tags are added in the app info tab such as KeyStore (apps with KeyStore items), Systemless app (apps installed via Magisk), Running (apps that are running). For external apk, two more options are added namely Reinstall and Downgrade. Now it is possible to share an apk via Bluetooth. For system apps, it is possible to uninstall updates for root/ADB users. But like the similar option in the system settings, this operation will clear all app data. As stated above, exodus has been replaced with scanner.
It is now possible to sort and filter processes in this tab. Also, the three big buttons are replaced with an easy-to-use three dot menu. Previously the memory usage was wrong which is fixed in this version.
Toybox (an alternative to busybox) is bundled with AM. Although Android has this utility built-in from API 23, toybox is bundled in order to prevent buggy implementations and to support API < 23.
Component blocker seemed to be problematic in the previous version, especially when global component blocking is enabled. The issues are mostly fixed now.
Caution:
The component blocking mechanism is no longer compatible with v2.5.6 due to various security issues. If you have this version, upgrade to v2.5.13 or earlier versions first. After that, enable global component blocking and disable it again.
Value of various app ops depend on their parent app ops. Therefore, when you allow/deny an app op, the parent of the app op gets modified. This fixes the issues some users have been complaining regarding some app ops that couldn’t be changed.
If an app has the target API 23 or less, its permissions cannot be
modified using the pm grant …
command. Therefore, for such
apps, option to toggle permission has been disabled.
The signature tab is improved to support localization. It also displays multiple checksums for a signature.
Manifest no longer crashes if the size of the manifest is too long. Generated manifest are now more accurate than before.
Bundled app formats such as apks and
xapk are now supported. You can install these apps
using the regular installation buttons. For root and adb users, apps are
installed using shell, and for non-root users, the platform default
method is used. Currently all splits apks are installed. But this
behaviour is going to change in the next release. If you only need a few
splits instead of all, extract the APKS or
XAPK file, and then, create a new zip file with your
desired split apks and replace the ZIP extension with
APKS. Now, open it with AM. There is no progress dialog to display the installation
progress.6.6.1.0.1 Known Limitations
You can now install APK, APKS or
XAPK directly from your favourite browser or file
manager. For apps that need updates, a What’s New
dialog is displayed showing the changes in the new version. Downgrade is not yet possible. There is no progress dialog to display the installation progress.
If you cannot interact with the current page, wait until the
installation is finished.6.6.2.0.1 Known Limitations
In the Settings page, a new option is added which can be used to remove all blocking rules configured within App Manager.
App Ops are now generated using a technique similar to AppOpsX. This should decrease the loading time significantly in the App Ops tab.
In the App Ops tab, a menu item is added which can be used to list only active app ops without including the default app ops. The preference is saved in the shared preferences.
Often the App Ops tab may not be responsive. If that’s the case, restart App Manager.
ADB shell commands are now executed using a technique similar to
AppOpsX (This is the free alternative of AppOps by Rikka.).
This should dramatically increase the execution time. AM can often crash or become not responsive. If that’s the case,
restart App Manager.6.6.5.0.1 Known Limitation
Add an option to filter apps that has at least one activity.
Apk files are now saved as app name_version.extension
instead of package.name.extension
.
Added a foreground service to run batch operations. The result of the operation is displayed in a notification. If an operation has failed for some packages, clicking on the notification will open a dialog box listing the failed packages. There is also a Try Again button on the bottom which can be used to perform the operation again for the failed packages.
Replaced Linux kill with force-stop.
Added German and Portuguese (Brazilian) translations. Not all translations are verified yet.6.6.9.0.1 Known Limitation
Install app only for the current user at the time of restoring backups. Support for split apks is also added.
Data backup feature is now considered unstable. If you encounter any problem, please report to me without hesitation.
App Ops (short hand for Application
Operations) are used by Android system (since Android 4.3) to
control application permissions. The user can control some
permissions, but only the permissions that are considered dangerous (and
Google thinks knowing your phone number isn’t a dangerous thing). So,
app ops seems to be the one we need if we want to install apps like
Facebook and it’s Messenger (the latter literary records everything if
you live outside the EU) and still want some privacy and/or
security. Although certain features of app ops were available in
Settings and later in hidden settings in older version of Android, it’s
completely hidden in newer versions of Android and is continued to be
kept hidden. Now, any app with
android.Manifest.permission.GET_APP_OPS_STATS
permission can get the app ops information for other applications but
this permission is hidden from users and can only be enabled using ADB
or root. Still, the app with this permission cannot grant or revoke
permissions (actually mode of operation) for apps other than itself
(with limited capacity, of course). To modify the ops of other app, the
app needs
android.Manifest.permission.UPDATE_APP_OPS_STATS
permissions which isn’t accessible via pm
command. So, you
cannot grant it via root or ADB, the permission is only granted to the
system apps. There are very few apps who support disabling permissions
via app ops. The best one to my knowledge is AppOpsX. The main (visible)
difference between my app (AppManager) and this app is that the latter
also provides you the ability to revoke internet permissions (by writing
ip tables). One crucial problem that I faced during the development of
the app ops API is the lack of documentation in English language.
Figure 1 describes the process of changing
and processing permission. AppOpsManager can be used to manage
permissions in Settings app. AppOpsManager is also
useful in determining if a certain permission (or operation) is granted
to the application. Most of the methods of
AppOpsManager are accessible to the user app but unlike
a system app, it can only be used to check permissions for any app or
for the app itself and start or terminating certain operations.
Moreover, not all operations are actually accessible from this Java
class. AppOpsManager holds all the necessary constants
such as OP_*
,
OPSTR_*
, MODE_*
which describes
operation code, operation string and mode of operations respectively. It
also holds necessary data structures such as PackageOps and OpEntry.
PackageOps holds OpEntry for a
package, and OpEntry, as the name suggests, describes
each operation.
AppOpService
is completely hidden from a user
application but accessible to the system applications. As it can be seen
in Figure 1, this is the class that does the
actual management stuff. It contains data structures such as
Ops to store basic package info and Op
which is similar to OpEntry of
AppOpsManager. It also has Shell which
is actually the source code of the appops command line tool. It writes
configurations to or read configurations from /data/system/appops.xml
. System
services calls AppOpsService to find out what an
application is allowed and what is not allowed to perform, and
AppOpsService determines these permissions by parsing
/data/system/appops.xml
. If no custom values are present in
appops.xml, it returns the default mode available in
AppOpsManager.
AppOpsManager stands for application operations manager. It consists of various constants and classes to modify app operations.
Siehe auch: AppOpsManager documentation
OP_*
ConstantsOP_*
are the integer constants starting from
0
. OP_NONE
implies that no operations are
specified whereas _NUM_OP
denotes the number of operations
defined in OP_*
prefix. While they denote each operation,
the operations are not necessarily unique. In fact, there are many
operations that are actually a single operation denoted by multiple
OP_*
constant (possibly for future use). Vendors may define
their own op based on their requirements. MIUI is one of the vendors who
are known to do that.
public static final int OP_NONE = -1;
public static final int OP_COARSE_LOCATION = 0;
public static final int OP_FINE_LOCATION = 1;
public static final int OP_GPS = 2;
public static final int OP_VIBRATE = 3;
...
public static final int OP_READ_DEVICE_IDENTIFIERS = 89;
public static final int OP_ACCESS_MEDIA_LOCATION = 90;
public static final int OP_ACTIVATE_PLATFORM_VPN = 91;
public static final int _NUM_OP = 92;
Whether an operation is unique is defined by
sOpToSwitch
. It maps each operation to another operation or
to itself (if it’s a unique operation). For instance,
OP_FINE_LOCATION
and OP_GPS
are mapped to
OP_COARSE_LOCATION
.
Each operation has a private name which are described by
sOpNames
. These names are usually the same names as the
constants without the OP_
prefix. Some operations have
public names as well which are described by sOpToString
.
For instance, OP_COARSE_LOCATION
has the public name
android:coarse_location.
As a gradual process of moving permissions to app ops, there are
already many permissions that are defined under some operations. These
permissions are mapped in sOpPerms
. For example, the
permission
android.Manifest.permission.ACCESS_COARSE_LOCATION is
mapped to OP_COARSE_LOCATION
. Some operations may not have
any associated permissions which have null
values.
As described in the previous section, operations that are configured
for an app are stored at /data/system/appops.xml
. If an
operation is not configured, then whether system will allow that
operation is determined from sOpDefaultMode
. It lists the
default mode for each operation.
MODE_*
ConstantsMODE_*
constants also integer constants starting from
0
. These constants are assigned to each operation
describing whether an app is authorised to perform that operation. These
modes usually have associated names such as allow for
MODE_ALLOWED
, ignore for
MODE_IGNORED
, deny for
MODE_ERRORED
(a rather misnomer), default
for MODE_DEFAULT
and foreground for
MODE_FOREGROUND
.
MODE_ALLOWED
. The app is allowed to
perform the given operation
MODE_IGNORED
. The app is not
allowed to perform the given operation, and any attempt to perform the
operation should silently fail, i.e. it should not cause the
app to crash
MODE_ERRORED
. The app is not
allowed to perform the given operation, and this attempt should cause it
to have a fatal error, typically a
SecurityException
MODE_DEFAULT
. The app should use
its default security check, specified in
AppOpsManager
MODE_FOREGROUND
. Special mode that
means “allow only when app is in foreground.” This mode was added in
Android 10
MODE_ASK
. This is a custom mode
used by MIUI whose uses are unknown.
AppOpsManager.PackageOps is a data structure to store all the OpEntry for a package. In simple terms, it stores all the customised operations for a package.
public static class PackageOps implements Parcelable {
private final String mPackageName;
private final int mUid;
private final List<OpEntry> mEntries;
...
}
As can be seen in Listing 2, it stores all OpEntry for a package as well as the corresponding package name and its kernel user ID.
AppOpsManager.OpEntry is a data structure that stores a single operation for any package.
public static final class OpEntry implements Parcelable {
private final int mOp;
private final boolean mRunning;
private final @Mode int mMode;
private final @Nullable LongSparseLongArray mAccessTimes;
private final @Nullable LongSparseLongArray mRejectTimes;
private final @Nullable LongSparseLongArray mDurations;
private final @Nullable LongSparseLongArray mProxyUids;
private final @Nullable LongSparseArray<String> mProxyPackageNames;
...
}
Here:
mOp
: Denotes one of the OP_*
constants
mRunning
: Whether the operation is in progress
(i.e. the operation has started but not finished yet). Not all
operations can be started or finished this way
mMOde
: One of the MODE_*
constants
mAccessTimes
: Stores all the available access
times
mRejectTimes
: Stores all the available reject
times
mDurations
: All available access durations, checking
this with mRunning
will tell you for how long the app is
performing a certain app operation
mProxyUids
: No documentation found
mProxyPackageNames:
No documentation found
TODO
TODO
Latest appops.xml
has the following format: (This DTD is
made by me and by no means perfect, has compatibility issues.)
<!DOCTYPE app-ops [
<!ELEMENT app-ops (uid|pkg)*>
<!ATTLIST app-ops v CDATA #IMPLIED>
<!ELEMENT uid (op)*>
<!ATTLIST uid n CDATA #REQUIRED>
<!ELEMENT pkg (uid)*>
<!ATTLIST pkg n CDATA #REQUIRED>
<!ELEMENT uid (op)*>
<!ATTLIST uid
n CDATA #REQUIRED
p CDATA #IMPLIED>
<!ELEMENT op (st)*>
<!ATTLIST op
n CDATA #REQUIRED
m CDATA #REQUIRED>
<!ELEMENT st EMPTY>
<!ATTLIST st
n CDATA #REQUIRED
t CDATA #IMPLIED
r CDATA #IMPLIED
d CDATA #IMPLIED
pp CDATA #IMPLIED
pu CDATA #IMPLIED>
]>
The instruction below follows the exact order given above:
app-ops
: The root element. It can contain any number
of pkg
or package uid
v
: (optional, integer) The version number (default:
NO_VERSION
or -1
)
pkg
: Stores package info. It can contain any number
of uid
n
: (required, string) Name of the package
Package uid
: Stores package or packages info
n
: (required, integer) The user ID
uid
: The package user ID. It can contain any number
of op
n
: (required, integer) The user ID
p
: (optional, boolean) Is the app is a
private/system app
op
: The operation, can contain st
or
nothing at all
n
: (required, integer) The op name in integer,
i.e. AppOpsManager.OP_*
m
: (required, integer) The op mode,
i.e. AppOpsManager.MODE_*
st
: State of operation: whether the operation is
accessed, rejected or running (not available on old versions)
n
: (required, long) Key containing flags and
uid
t
: (optional, long) Access time (default:
0
)
r
: (optional, long) Reject time (default:
0
)
d
: (optional, long) Access duration (default:
0
)
pp
: (optional, string) Proxy package name
pu
: (optional, integer) Proxy package uid
This definition can be found at AppOpsService.
appops
or cmd appops
(on latest versions)
can be accessible via ADB or root. This is an easier method to get or
update any operation for a package (provided the package name is known).
The help page of this command is self-explanatory:
AppOps service (appops) commands:
help
Print this help text.
start [--user <USER_ID>] <PACKAGE | UID> <OP>
Starts a given operation for a particular application.
stop [--user <USER_ID>] <PACKAGE | UID> <OP>
Stops a given operation for a particular application.
set [--user <USER_ID>] <[--uid] PACKAGE | UID> <OP> <MODE>
Set the mode for a particular application and operation.
get [--user <USER_ID>] <PACKAGE | UID> [<OP>]
Return the mode for a particular application and optional operation.
query-op [--user <USER_ID>] <OP> [<MODE>]
Print all packages that currently have the given op in the given mode.
reset [--user <USER_ID>] [<PACKAGE>]
Reset the given application or all applications to default modes.
write-settings
Immediately write pending changes to storage.
read-settings
Read the last written settings, replacing current state in RAM.
options:
<PACKAGE> an Android package name or its UID if prefixed by --uid
<OP> an AppOps operation.
<MODE> one of allow, ignore, deny, or default
<USER_ID> the user id under which the package is installed. If --user is not
specified, the current user is assumed.