Benachrichtigungszugriff auf Android: Was eine App damit wirklich lesen kann
Der Benachrichtigungszugriff auf Android ist eine der weitreichendsten Berechtigungen. Was er genau freigibt und was du vorher fragen solltest.
Du installierst eine App, die Funktion, wegen der du sie wolltest, ist nur noch einen Bildschirm entfernt, und statt des üblichen Berechtigungsdialogs schickt sie dich in die Einstellungen, wo du etwas namens Benachrichtigungszugriff einschalten sollst. Dort erscheint eine bildschirmfüllende Warnung, noch bevor der Schalter wirkt, und sie zählt in allgemeinen Worten auf, was die App gleich alles lesen darf. Die meisten überfliegen den Text, erlauben den Zugriff und kehren zur App zurück, vor allem, weil vorher nichts funktioniert. Der Benachrichtigungszugriff, den Android über diesen einen Bildschirm vergibt, gehört zu den weitreichendsten Freigaben im ganzen System, und die Warnung untertreibt, wie weit er wirklich reicht.
Was die Berechtigung freigibt
Sobald du sie erteilst, bekommt die App eine Live-Kopie jeder Benachrichtigung, die auf deinem Handy erscheint, nicht nur ihrer eigenen. Dazu gehört, welche App sie ausgelöst hat, der genaue Titel und Text und alles, was diese App zusätzlich angehängt hat: der Name des Absenders, eine Vorschauzeile, manchmal ein Vorschaubild. Das gilt für alle Apps auf dem Gerät gleichzeitig. Messenger, Banking-App, Paketverfolgung, Kalendererinnerungen, alles läuft durch dieselbe Leitung zu jeder App, der du diesen Zugriff gegeben hast.
Mit demselben Zugriff kann eine App eine Benachrichtigung auch aus der Benachrichtigungsleiste entfernen, so wie es dein Daumen tun würde, und auf vielen Handys das Antwortfeld oder die Aktionsschaltflächen einer Benachrichtigung benutzen, ohne dass du sie selbst öffnest. Alles lesen, alles entfernen und manchmal auch darauf reagieren: Das ist die Berechtigung in einem Satz. Zugleich macht erst sie die nützliche Seite dieser Kategorie möglich, von der Smartwatch-App, die die Benachrichtigungen deines Handys spiegelt, über ein allgemeines Werkzeug mit Notification-Listener-Berechtigung wie Tasker bis zu einer Verlaufs-App wie unserer.
Warum Android sie hinter einer Warnung versteckt
Diese Berechtigung kannst du nicht so erteilen wie Kamera oder Standort, mit einem kleinen Dialog und einem Tippen. Android legt sie in den Einstellungen im Bereich „Spezieller App-Zugriff“ ab und zeigt eine bildschirmfüllende Warnung, bevor der Schalter wirkt. Darin steht ausdrücklich, dass die App gleich den Inhalt deiner Benachrichtigungen lesen kann und nicht nur erfährt, dass eine eingetroffen ist. Diese zusätzliche Hürde ist Absicht. Google behandelt den Zugriff wie eine kurze Liste anderer Sonderzugriffe, darunter Bedienungshilfen und Apps zur Geräteverwaltung. All diese Zugriffe geben einer App so viel Reichweite, dass es gerechtfertigt ist, den Nutzer den Bildschirm suchen zu lassen, statt ihn durch einen Dialog tippen zu lassen, während er gerade mit etwas ganz anderem beschäftigt ist.
Deshalb schränken auch die Richtlinien des Stores ein, wer danach fragen darf: Eine Funktion, die wirklich darauf angewiesen ist, Benachrichtigungen systemweit zu lesen, ist ein legitimer Grund. Eine bequeme Abkürzung zu Nutzerdaten, an die eine App sonst nicht käme, ist keiner. Ob eine bestimmte App diese Hürde nimmt, musst trotzdem du beurteilen, denn ein Store-Eintrag verrät selten, welche Funktion tatsächlich hinter der Anfrage steckt. Ob der Benachrichtigungszugriff sicher ist, entscheidet sich allein daran, was die App nach der Warnung tut, nicht an der Warnung selbst.
Der Unterschied zwischen Lesen und Aufbewahren
Der Benachrichtigungszugriff beantwortet eine einzige Frage: Kann diese App sehen, was eintrifft? Was danach mit diesen Informationen geschieht, sagt er nicht. Der eingebaute Benachrichtigungsverlauf von Android ist ein guter Vergleich. Selbst mit vollem Zugriff auf dieselbe Leitung bewahrt Android selbst nur ungefähr einen Tag auf, standardmäßig ausgeschaltet und ohne Suche. Lesen und Aufbewahren sind getrennte Fähigkeiten, und eine erteilte Berechtigung deckt immer nur die erste ab.
Eine App mit diesem Zugriff könnte jede Benachrichtigung verwerfen, kaum dass sie den Titel gelesen hat. Oder den vollständigen Text samt Absender unbegrenzt speichern. Oder im Moment des Eintreffens eine Kopie vom Gerät wegschicken. Die Berechtigung sieht in jedem dieser Fälle gleich aus. Der Unterschied liegt im Code der App und in ihrer Ehrlichkeit darüber, was dieser Code tut, und beides kann dir der Einstellungsbildschirm nicht zeigen. Dieselbe Grenze gilt für das ältere, versteckte Benachrichtigungsprotokoll von Android, das auf Systemebene liegt und bei jedem Neustart gelöscht wird, egal, welche Apps diese Berechtigung haben. Nichts, was in Android eingebaut ist, war je als dauerhaftes Archiv gedacht. Eine App, die eines will, muss es selbst bauen, auf demselben Zugriff, den jeder andere Listener auch bekommt.
Vier Fragen an jede App, die den Zugriff will
- Braucht sie wirklich die Benachrichtigungen aller Apps, oder geht es nur um die eine Funktion, für die du sie installiert hast? Eine Taschenlampen-App oder ein einfaches Spiel hat für diese Berechtigung überhaupt keine legitime Verwendung.
- Wohin geht, was sie liest? „Bleibt nur auf dem Gerät“ ist ein ganz anderes Versprechen als eine Kopie, die an einen Server geht, und der Unterschied wird selten von vornherein genannt.
- Kannst du sehen, exportieren und löschen, was sie gespeichert hat? Eine App, die dir ihre eigenen Daten zeigt, behauptet etwas anderes als eine, die nur um dein Vertrauen bittet.
- Muss sie deine Benachrichtigungen entfernen oder darauf reagieren, oder soll sie sie dir nur wieder anzeigen? Die Benachrichtigungsleiste zu leeren oder in deinem Namen zu antworten ist eine zweite Fähigkeit, die auf dem Lesen aufsetzt, kein automatischer Teil davon.
Wir haben ReNotify an genau diesen vier Fragen gemessen, weil es dieselbe Berechtigung verlangt. Die App muss jede Benachrichtigung sehen, um einen Verlauf aufzubauen. Diesen Verlauf hält sie aber nur in einer lokalen Datenbank auf dem Gerät, du kannst ihn jederzeit exportieren oder löschen, und eine Kopie wird nirgendwohin geschickt. Die Fähigkeiten zum Entfernen und Auslösen von Benachrichtigungen, die mit der Berechtigung kommen, nutzt ReNotify durchaus, denn nur so lässt sich eine alte Benachrichtigung zurück in die Benachrichtigungsleiste legen. Über das hinaus, was du verlangt hast, tut die App aber nichts. Eine ehrliche Grenze, wenn wir schon dabei sind: Eine wiederhergestellte Benachrichtigung behält ihr ursprüngliches Tippziel nur etwa sechs Stunden lang und nur bis zum nächsten Neustart des Handys, weil Android die zugrunde liegende Verknüpfung, den PendingIntent, nur so lange am Leben hält. Danach bringt „Erneut senden“ immer noch den Text zurück, aber nicht mehr das Ziel hinter dem Tippen.
So prüfst du, was du schon freigegeben hast
Die Liste der Apps mit dieser Berechtigung ist auf deinem Handy nicht versteckt, sie liegt nur nicht dort, wo man zufällig vorbeikommt. Öffne Einstellungen, Apps, Spezieller App-Zugriff, Benachrichtigungszugriff. Manche Handys legen den Eintrag hinter ein Zahnrad-Symbol oder benennen den Bereich etwas anders, er liegt aber immer unter dem speziellen oder erweiterten App-Zugriff. Dort steht jede App, die die Berechtigung gerade hat, mit einem Schalter daneben.
Alles, was du nicht erkennst oder nicht bewusst freigegeben hast, kannst du auf demselben Bildschirm sofort abschalten, ohne die App selbst zu deinstallieren. Ein Blick alle paar Monate lohnt sich, genauso wie bei Kamera- und Mikrofonzugriff, denn eine App, die den Zugriff vor einem Jahr für eine Funktion bekommen hat, hat ihn womöglich noch lange, nachdem du diese Funktion nicht mehr nutzt. Ein lautes Handy in den Griff zu bekommen heißt meistens, einzelne Apps stummzuschalten. Dieser Bildschirm ist aber der einzige Ort, an dem du einer App den Zugriff auf deine Benachrichtigungen ganz entziehst, statt sie nur stummzuschalten.