Wie kann man überprüfen, ob Android Permission tatsächlich verwendet wird?

Ich behalte eine bestehende (sehr riesige, sehr sensible) Android Applikation.
Der andere Tag habe ich eine E-Mail von meinem Kunden erhalten, dass die Anwendung die Berechtigungen, die nicht aktiv genutzt werden, deklarieren kann.

Zum Beispiel will ich, dass ich die Berechtigung "WRITE_EXTERNAL_STORAGE" lösche.
Ich habe es entfernt und kompiliert und die App ausgeführt. Es gibt überhaupt keinen Fehler.
Aber gerade deshalb, ich glaube nicht, dass ich davon ausgehen kann, dass die Erlaubnis nicht aktiv genutzt wird.

  • WebView und localhost
  • Unterschied zwischen verwaltetem und nicht verwaltetem In-App-Produkt Android?
  • Schreiben sms zum Inhalt: // sms / sent table
  • Wie kann ich mein Android-Projekt in Eclipse IDE verschleiern?
  • Einfügen des aktuellen Jahres in eine TextView
  • Wie dynamisch setzen Textansicht Höhe Android
  • Meine Frage ist: "Gibt es sowieso kann ich einfach und einfach die Erlaubnis überprüfen, ob es aktiv genutzt wird?"

    Ehrlich gesagt, ich möchte nicht durch jeden kleinen Detail Aspekt dieser Anwendung zu gehen, nur um herauszufinden, die Erlaubnis ist erforderlich oder nicht.
    Ich habe einfach keine zeit

    Mein Ziel ist, ob die Erlaubnis aktiv genutzt wird. Wenn nicht, entfernen Sie die Berechtigung.
    Hoffe, es gibt eine weniger zeitaufwendige Weise dafür.

    Grüße

  • Android usb adb treiber für htc Wunsch hd
  • Android Endlose Liste
  • INSTALL_FAILED_DEXOPT Fehler in Android 5.0 im Freigabemodus
  • So legen Sie den Standardwert des Switch-Widgets in Android fest
  • Konvertieren von String-Text in Bitmap
  • Android Studio 2.3 hat keine Test Instrumentation Spezifizierer in UI
  • 3 Solutions collect form web for “Wie kann man überprüfen, ob Android Permission tatsächlich verwendet wird?”

    In Android Studio 1.3 und Android Support Library v7: 22.2.0 haben Sie eine Lösung dafür.

    Schritte:

    1. Android Studio auf V1.3 aktualisieren
    2. Aktualisieren Sie Ihre Android Support Library auf v7: 22.2.0
    3. Führen Sie Android Lint (Analysieren -> Inspect Code), In Lint Error sehen Sie für Typ "Android -> Constant & Resource Type MisMatch", die alle Methoden, die Genehmigung erfordert.

    Erläuterung

    1. Android hat neue Annotation @equirespermission eingeführt.
    2. Alle SDK-Methoden, die eine Erlaubnis benötigen, werden mit @equirespermission kommentiert.
    3. Wenn wir eine Sdk-Methode nennen, die eine Erlaubnis erfordert, ohne ordnungsgemäß zu prüfen, ob wir eine Berechtigung haben oder nicht, wird Android Studio durch Flusenfehler.

    Es gibt eine Gruppe in Berkeley, die ein Papier über Android-Berechtigungen geschrieben hat. Sie reden über Über-Berechtigungen und entwickelten ein Tool namens Stowaway, das Ihre APK für unbenutzte Berechtigungen analysieren würde. Die Analyse basiert auf den API-Anrufen der App und ihrer eigenen Zuordnung der für jeden API-Aufruf benötigten Berechtigungen (siehe das Papier für Details). Das Tool wirft eine Fahne, wenn es eine Erlaubnis in dem Manifest gibt, die nicht auf irgendwelche der API-Anrufe, die in der APK gefunden werden, zugeordnet ist.

    Für eine Weile war eine webbasierte Version des Tools unter http://www.android-permissions.org/ verfügbar, aber es ist aus der Lebkuchenära und wurde nie aktualisiert. Die Seite schlägt jetzt mit PScout vor .

    PScout macht einen besseren Job als Stowaway bei der Erstellung der Genehmigungskarten. Allerdings schließt PScout keinen APK-Analysator ein, also musst du manuell die Zuordnungen vergleichen, die sie mit API-Anrufen von deiner App zur Verfügung stellen. Leider, wenn Sie in Karten für Versionen über 4.1.1 interessiert sind, müssen Sie sie selbst mit dem bereitgestellten PScout-Code und Ihrer eigenen Framework-Quelle generieren.

    Sie können auch die verschiedenen APK-Analysatoren hier sehen, um zu sehen, ob sie die Funktionalität einschließen, die Sie suchen.

    Ich habe die von Vasanth vorgeschlagene Methode ausprobiert, aber es funktioniert nicht für mich. In der Tat, weil mein Projekt hat Aromen und Code Inspection funktioniert nicht für das Projekt mit Aromen. Siehe https://code.google.com/p/android/issues/detail?id=210073 .

    Aber Laufen von der Konsole funktioniert. So sind die Schritte einfach:

    1. Entfernen Sie die Berechtigungen aus Ihrem Manifest.
    2. Lint für Geschmack ausführen, wie hier beschrieben https://stackoverflow.com/a/32708435/1170154 .
    3. Open Lint Ergebnis und finden Sie Abschnitt Correctness> Error MissingPermission: Fehlende Berechtigungen. Es enthält alle Anrufe, die Berechtigungen erfordern.
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.