Ist es möglich, eine App zu installieren und einige der angeforderten Berechtigungen auszuschließen?

Gelegentlich möchte ich eine Anwendung installieren, die bestimmte Berechtigungen erfordert, die sie meiner Meinung nach wirklich nicht benötigen sollte. Kann ich die App installieren, ohne ihr diese Berechtigungen zu erteilen? Zum Beispiel GPS-Standort, Telefonstatus , Internetverbindung usw.

Ist es möglich, die Berechtigungen einer Anwendung nach der Installation zu ändern?

Hier ist eine verwandte Frage, die es wert ist, im Auge behalten zu werden: android.stackexchange.com/questions/3294
eine andere verwandte Frage stackoverflow.com/questions/1836155/…

Antworten (9)

Vor Android 4.3 (Jelly Bean)

Nein. Ohne ein benutzerdefiniertes ROM ist es eine Alles-oder-Nichts-Angelegenheit. Dies ist einer der Gründe, warum Google Entwickler ermutigt, sicherzustellen, dass sie nach den absoluten Mindestberechtigungen fragen, die erforderlich sind, damit die App funktioniert.

Ohne den App-Code zu erhalten und zu ändern, müssen Sie entweder die Zugriffsanfrage akzeptieren oder die App nicht verwenden. Es gibt einige Alternativen, wenn Ihr Gerät gerootet ist.

Android 4.3/4.4 (teilweise auch 5.x)

Es gibt einen halb versteckten Berechtigungsmanager (App Ops), der über eine Drittanbieter-App erreicht werden kann , aber weder Root noch ein benutzerdefiniertes ROM erfordert. Android Police hat es hier behandelt .

Beachten Sie jedoch, dass Google gesagt hat, dass dies irrtümlicherweise veröffentlicht wurde, und neuere Versionen von Android dies erneut deaktiviert haben.

Android 4.4+

Zusätzlich zu den oben genannten App Ops können Sie hier auch das Xposed Framework (für Android 5+ siehe hier ) mit Modulen wie Xprivacy oder Protect My Privacy verwenden . Dazu muss Ihr Gerät zwar gerootet sein, es bietet jedoch zusätzliche Funktionen.

Android 6+

marcioggs skizzierte die in Android M bereitgestellten Funktionen in einer separaten Antwort.

Wenn Sie rooten, können Sie den Netzwerkzugriff mit DroidWall ausschließen, aber das ist eine spezifische Ausnahme.
Leider hat Google beschlossen, Dinge, die viele Unterhaltungsanwendungen benötigen, wie z. B. die Feststellung, ob ein Anruf aktiv ist, unter derselben Berechtigung zu gruppieren wie Dinge, die nur sehr wenige Anwendungen ohne Telefonfunktion benötigen, z. B. die Bestimmung der Telefonnummer.

CyanogenMod 7 unterstützt dies. Settings->CyanogenMod Settings->ApplicationsEs wurde aktiviert, indem Sie ab dem neuesten Build zu "Berechtigungsverwaltung" gehen und es überprüfen. Sie können dann Berechtigungen zulassen oder verweigern, indem Sie eine App aus der App-Verwaltungsliste ( Settings->Applications->Manage applications) auswählen. Es gibt einen Artikel auf Endgaget mit einer Youtube-Demonstration.

Haftungsausschluss: Dies mag für einige offensichtlich sein, aber das Verweigern von Berechtigungen für eine App könnte ziemlich absturztastische Folgen haben. Wenn Sie jedoch ein Gerät haben, das von CM unterstützt wird, und Sie bereit sind, es zu rooten und zu installieren, können Sie die Kontrolle von Berechtigung zu Berechtigung genießen (und alle damit verbundenen Gefahren).

Tatsächlich wurde es aufgrund der Abstürze, die die Implementierung der Berechtigungsverwaltung verursachte, in Version 9 aus der CyanogenMod-Codebasis entfernt. Die neuesten nächtlichen Builds von CyanogenMod 10.1 enthalten jedoch jetzt eine Funktion, die als „ Privacy Guard “ bezeichnet wird. Anstatt Apps daran zu hindern, auf angeforderte Daten zuzugreifen, stellt Privacy Guard ihnen leere Daten zur Verfügung.

Wenn beispielsweise eine App, die unter Privacy Guard ausgeführt wird, Ihre Kontaktliste anfordert, gibt CM einfach eine leere Liste zurück, wodurch die App funktional davon ausgeht, dass Sie keine Kontakte auf Ihrem Telefon gespeichert haben.

Leider wird das Fälschen von Daten nicht für die Integration in CyanogenMod in Betracht gezogen.

Es gibt eine App Shield - Anwendung. Es verpackt im Wesentlichen .apk mit Berechtigungen, die aus Manifest entfernt wurden . Geniale Idee für Standardtelefone ohne Root. Absturzgefährdet (Force-Closing), jedoch wie bei CyanogenMod (ab Version 7).


Update: App Shield scheint nicht mehr gepflegt zu werden. Es kann derzeit in einigen "persönlichen Aptoide-Repositories" gefunden werden, zB bei Mixal und Karbyfio . Es empfiehlt sich, jetzt lieber etwas Aktuelleres zu verwenden.

HINWEIS: LBE Privacy Guard wird nicht mehr gepflegt und ist nur für Android-Versionen unter 4.2 verfügbar.

Warnung: Wenn Sie Jelly Bean (Android 4.1+) verwenden, überprüfen Sie unbedingt, ob LBE bereits für Jelly Bean aktualisiert wurde. Im Moment (27. Juli 2012) ist es noch inkompatibel und führt dazu, dass Ihr Gerät auf Jelly Bean in einer Schleife bootet. Das bedeutet, dass Sie Ihr Gerät möglicherweise auf die Werkseinstellungen zurücksetzen müssen. Stattdessen wird jetzt Xprivacy empfohlen (root erforderlich).


LBE Privacy Guard kann bestimmte Berechtigungen pro Anwendung blockieren, sowohl während der Installation als auch danach. Dies ist die englische Version einer anscheinend chinesischen Anwendung, die es schon eine Weile gibt (ich bin in keiner Weise mit ihnen verbunden); es hat bereits über 100.000 Downloads. Ich habe es noch nicht ausprobiert, aber ich habe vor, dies morgen zu tun.

Sie können es auch so einstellen, dass Facebook beispielsweise eine Aufforderung (Ja/Nein) anzeigt, wenn es auf Ihren Standort zugreifen möchte usw. Ein Screenshot aus dem Play Store:

Geben Sie hier die Bildbeschreibung ein

Funktioniert nicht auf Xperia ray mit CM 10.0. Ich musste mein Gerät einfach neu installieren!
@rubo77: Autsch, das ist scheiße! (Haben Sie meine Warnung oben gelesen?)
Ja, aber ich dachte, ich könnte damit durchkommen ;) Sie sollten hinzufügen, dass es keine Möglichkeit gibt, einen Bootloop wiederherzustellen, und dass es auf vielen Geräten nicht funktioniert. Wenn man sich das Feedback im Play Store ansieht, sind genau die Hälfte der Stimmen 5 und die Hälfte 1, also schätze ich, dass jedes zweite Gerät ausfallen wird
@rubo77: Es wurde also seit mehr als einem Jahr nicht mehr aktualisiert? Ich habe es nicht mehr benutzt, seit ich diese Änderung vorgenommen habe ... Ich benutze jetzt Xprivacy. Es gibt Möglichkeiten, sich von einer Boot-Schleife zu erholen. Sie könnten beispielsweise in die Wiederherstellung booten und die Anwendung über einen Dateimanager / Ihren PC entfernen. Eventuell ROM neu flashen.
Sicher, ich meinte "keine Möglichkeit, einen Bootloop wiederherzustellen, ohne alle Ihre Einstellungen zu verlieren". Ich werde jetzt Xprivacy ausprobieren , klingt vielversprechend
@rubo77: Wenn Sie die Anwendung entfernen und/oder Ihr ROM neu flashen, sollten Sie Ihre Einstellungen nicht verlieren, wenn das funktioniert. Viel Glück mit Xprivacy!
Der zweite Link ist leider tot. Antwort benötigt ein Update.
@Firelord: Ah, jetzt verstehe ich: Der Link ist nur für mich zugänglich, weil ich ihn einmal installiert habe. Wenn ich mich von meinem Google-Konto abmelde, kann ich auch nicht auf die Seite zugreifen. Es gibt jedoch keinen anderen Ort für die Software im Play Store. Einzige Alternative ist die chinesische Version im Play Store, die zwar aktuell, aber für Nicht-Chinesisch-Sprecher unbrauchbar ist. Also habe ich keinen anderen Link. Alles in meiner Antwort unter der vertikalen Linie ist veraltet und wird nur zu Archivzwecken aufbewahrt. Verwenden Sie einfach Xprivacy: Es ist in vielerlei Hinsicht besser.

Die folgenden Funktionalitäten werden in Android M bereitgestellt:

  • Geben Sie während der Laufzeit nach Bedarf spezifische Berechtigungen;
  • Zeigen Sie die Berechtigung einer App an;
  • Alle Apps anzeigen, die eine bestimmte Berechtigung verwenden.

Dokumentation für M-Vorschau:

https://developer.android.com/preview/features/runtime-permissions.html

Berechtigungsbildschirm:

(Bild anklicken zum Vergrößern)

IMG:

Sie können das Xposed Framework zusammen mit dem App -Einstellungsmodul verwenden , um Anwendungsberechtigungen zu verweigern. Sie können es auch verwenden, um die DPI-Einstellungen zu ändern, sodass Apps im Tablet-Modus auf Telefonen ausgeführt werden können und umgekehrt (zusammen mit der Änderung der Größe von Dingen im Allgemeinen). Es funktioniert wunderbar für mich. Sie benötigen jedoch root, um es zu installieren.

Danke an Izzy für den Hinweis auf die Notwendigkeit eines Moduls. Gemäß ihrem Kommentar können Sie auch Xprivacy oder Protect My Privacy verwenden , um diese Kontrolle zu erreichen.

Zum Zeitpunkt des Schreibens dieser Antwort wurde das App-Einstellungsmodul mit den meisten xposed Framework-Installationen gebündelt. Dieses Modul unterstützt diese Funktionalität.
Vielen Dank, dass Sie sich immer noch um Ihre "alten Antworten" kümmern - +1 dafür :) Also werden wir unsere Kommentare dann bereinigen (löschen) :) PS: Bitte hinterlassen Sie Ihre erste, es macht immer noch Sinn :)

Ich bin auf diese App namens Permission Remover gestoßen , mit der Sie Berechtigungen aus dem APK-Paket entfernen können, bevor Sie es installieren. Funktionierte sowohl für installierte als auch für heruntergeladene APKs. Diese Methode ist praktisch, da Sie Ihr Gerät nicht rooten müssen.

Eine gute App (die seit 2016 nicht mehr im Playstore enthalten ist) vom Root-Deinstallationsprogramm : Um einer App nur das Recht zu entziehen, in CyanogenMod auf das Internet zuzugreifen, können Sie die Root-Firewall verwenden (benötigt Root).

Es kann den Internetzugang für alle Apps blockieren.

Die kostenlose Version kann bereits entweder alle Apps blockieren oder nur bis zu 7 verschiedene Apps blockieren.

Feingranulare App-Berechtigungen sind in Stock-Builds von Android bis Version 5.1.1 nicht vorhanden. Google hat ab Version 6.0 ein neues Berechtigungsmodell eingeführt, das eine gewisse Kontrolle basierend auf Berechtigungsgruppen beinhaltet. Wenn Sie jedoch Root-Zugriff auf einem Gerät mit Version 5.1.1 oder niedriger erhalten haben, gibt es Optionen zum Hinzufügen dieser Funktion zu Ihrem Gerät.

  1. Xposed-Framework

Gehen Sie zu xda-developers.com und suchen Sie nach „xposed framework“, um Informationen zur Installation des Frameworks zu erhalten. Installieren Sie nach der Installation des Frameworks entweder das XPrivacy- oder das App -Einstellungsmodul , um mehr Kontrolle über jede App und ihre gewährten Berechtigungen zu erhalten.

  1. Installieren Sie ein Cyanogenmod-basiertes ROM

Gehen Sie zu Cyanogenmod Downloads und prüfen Sie, ob Ihr Gerät aufgeführt ist. Wenn dies nicht der Fall ist, gehen Sie zurück zu xda-developers.com und gehen Sie zur Forumseite Ihres Geräts, um eine Liste der ROMs für Ihr Gerät zu finden. Suchen Sie im ursprünglichen Beitrag eines ROM-Threads nach irgendetwas, das sich auf „cyanogenmod“ oder „cm“ bezieht, um die richtige Basis für den Zugriff auf die Berechtigungssteuerung zu finden.

Hoffe das hilft.