Wie gebe ich an, dass ich keine Apps sehen möchte, die beispielsweise einen Internetzugang erfordern? Oder nur Apps anzeigen, die eine bestimmte Berechtigung verwenden?
Ein bestimmtes Repositorium mit Suche auf seiner Webseite? Eine App, die die Suche im Play Store ermöglicht?
Während meiner morgendlichen Routine beim Lesen meiner RSS-Feeds stolperte ich über eine Rezension bei N-Droid , in der es um eine App namens APEFS ging . Diese App wurde von deutschen Studenten entwickelt (daher ist die Beschreibung im Playstore auf Deutsch, auch wenn Sie die Sprache auf Englisch eingestellt haben). Aber für unsere nicht-deutschen Leser hier eine kurze Beschreibung:
Grundsätzlich ist APEFS ein alternatives Frontend zum Google Playstore. Sie durchsuchen den Playstore wie mit der Original-App und durchsuchen ihn genauso. Aber in der Ergebnisliste 1 kommt ein erweiterter Filter 2 ins Spiel:
Wie der zweite Screenshot zeigt, können Sie auswählen, welche Berechtigungen Ihre gewünschte App haben darf (Kontrollkästchen markiert) und welche Berechtigungen sie nicht haben darf (Kontrollkästchen nicht aktiviert).
Allerdings: Damit lassen sich zwar Apps mit unerwünschten Berechtigungen herausfiltern (z. B. nur Apps ohne Internetberechtigung anzeigen), aber Sie können Ihre Ergebnisse nicht auf das Gegenteil einschränken (z. B. nur Apps mit Internetberechtigung anzeigen). Die App zielt eindeutig auf Benutzer ab, die sich Sorgen um ihre Privatsphäre/Sicherheit machen – und laut der Rezension (ich habe sie erst vor ein paar Minuten gefunden, also konnte ich sie noch nicht testen) leistet sie sehr gute Arbeit.
BEARBEITEN:
Da es bereits ein Jahr her ist und das Versprechen auf der APEFS-Homepage ( GTransed to English, da ihre eigene englische Version diese Aussage im ersten Absatz nicht enthält) in absehbarer Zeit nicht erfüllt zu werden scheint (die App ist immer noch offline): Bitte betrachten Sie die webbasierte Lösung aus meiner anderen Antwort in der Zwischenzeit als Alternative.
Mehr als zwei Jahre sind vergangen, seit diese Frage gestellt wurde. Trotzdem gibt es noch keine „offizielle Lösung“. Trotz seiner Versprechungen ist APEFS (vor über einem Jahr in meiner vorherigen Antwort vorgestellt ) nicht zurückgekehrt. Also beschloss ich, meine eigene Lösung zu erstellen:
Seit fast 4 Jahren pflege ich Listen von „Android-Apps nach Zweck“, dh gruppiert nach ihren Anwendungsfällen. Im März habe ich damit begonnen, sie auf meinen eigenen Server zu verschieben . Alle Metadaten werden in einer Datenbank auf diesem Server gespeichert, und so konnte ich endlich eine Suche nach Berechtigungen einrichten .
Suchmaske, um "Apps nach Kategorie und Berechtigung" zu finden (Bild anklicken für größere Variante)
Sie können hier zwischen 1 und 5 Kategorien auswählen (beachten Sie, dass die Auswahl einer „übergeordneten Kategorie“ automatisch alle ihre „untergeordneten Kategorien“ umfasst), plus eine oder mehrere Berechtigungen. Voreingestellt ist die Suche nach „zulassungsfreundlichen Apps“ – wenn Sie also nach einem solchen Kandidaten suchen, können Sie das Formular einfach absenden, nachdem Sie die beschriebene Auswahl getroffen haben. Dies sollte es einfach machen, zB eine PIM -App zu finden, die keine Internet-Erlaubnis verlangt (um Ihre persönlichen Daten auf Ihrem Gerät zu speichern).
Aber auch das Gegenteil ist möglich: Wenn Sie z. B. herausfinden möchten, was NFC für Sie tun kann, wählen Sie die bis zu 5 Kategorien aus, die Sie interessieren, dann die NFC-Berechtigung, schalten Sie die Dropbox „Berechtigungen“ auf „Einschließen“. , und optional die Sortierung nach „nach Bewertung, absteigend“ (um die am besten bewerteten Apps zuerst zu bekommen).
Im Zweifelsfall gibt es das kleine Fragezeichen-Symbol in der oberen rechten Ecke, das Ihnen eine „Online-Hilfe“ bietet.
Aber das ist nicht alles. Wie ich im zweiten Absatz erklärt habe, sind Apps in meinen Listen nach ihrem „Zweck“ gruppiert, dh wofür Sie sie brauchen. Apps mit vergleichbarer Funktionalität sollten also nebeneinander erscheinen:
Kategorie mit App-Details (Quelle: Hilfeseite (daher die „roten Zahlen“); Bild anklicken für größere Variante)
Sie können sie also nicht nur nach Bewertung vergleichen, sondern auch diejenige auswählen, die weniger Berechtigungen anfordert (Zahl im Kästchen; im obigen Bild durch eine „rote 6“ gekennzeichnet) oder, wenn möglich, ohne Bedenken (kein roter Rahmen um das Kästchen). ). Wenn Sie auf den Namen der App klicken, werden, wie gezeigt, weitere Details angezeigt. Und es gibt viele „Ostereier“ (zB MouseOver-Ereignisse) – auch hier sei auf die Hilfeseite verwiesen.
Vollständige Offenlegung: Wie eingangs angedeutet, wurde die beschriebene Seite von mir entworfen, von mir gebaut, von mir mit ihren Inhalten gefüllt und wird von mir weiter gepflegt. Es ist zweisprachig (Englisch/Deutsch) kostenlos verfügbar (dazu gehören: keine Cookies, Flash-Cookies, was auch immer) usw. Diese Frage hier bei Android.SE war einer der Gründe, warum ich es eingerichtet habe.
Beachten Sie außerdem, dass dies nicht die gesamte „Playstore-Sammlung“ abdeckt. Bis heute sind etwas mehr als 10.000 Apps in der Datenbank aufgezeichnet (was wahrscheinlich etwas weniger als 1 % von dem ist, was auf Play ist – es sei denn, Sie zählen nicht den Mist, die Fälschungen und die nutzlosen Apps auf Play, dann meine Aufzeichnungen könnte ca. 10% abdecken ☺). Dennoch hoffe (und denke) ich, dass es bereits eine nützliche Ressource ist, die Ihnen gefallen wird.
Wenn ein Entwickler seine Anwendung auf Google Play hochlädt, wird die Anwendungsmanifestdatei in eine Datenbank gelesen, von wo aus die Suche nach Apps durchgeführt wird.
Um die Suche nach Anwendungen basierend auf ihren Berechtigungen zu ermöglichen, müsste man auf die Datenbank zugreifen und Daten sammeln, die den Anwendungsmanifestknoten betreffen <uses-permission>
, der zuvor aus der AndroidManifest.xml -Datei gelesen wurde, in der der Entwickler seine Anwendungsberechtigungen deklariert hat.
Obwohl dies recht einfach erscheint, bietet die Google-API keine Mittel zu diesem Zweck:
Streng genommen filtert Google Play nicht basierend auf <uses-permission>-Elementen.
Aus den Filtern auf Google Play Filtering based on Manifest Elements - <uses-permission> .
Im Wesentlichen verwendet der Google Play Store die Anwendungsmanifestdatei, um Filter basierend auf dem Gerät des Benutzers, den Hardwarespezifikationen, dem Land, dem Netzbetreiber usw. automatisch anzuwenden.
All dies geschieht im Hintergrund ohne Eingriff von Suchparametern.
Ein Benutzer von Google Play oder Suchmaschinen von Drittanbietern kann die Ergebnisse einschränken, nachdem sie automatisch von Google gefiltert wurden, basierend auf persönlichen Vorlieben wie dem Ausschluss kostenpflichtiger Apps; Beschränken Sie die Ergebnisse unter anderem auf Apps, die mit den Benutzergeräten kompatibel sind. Es gibt jedoch keine Möglichkeit, die von Google angewendeten Filter zu beeinträchtigen. Auch wenn wir irgendwie zu diesem Teil kommen, ist die API im Wesentlichen nicht darauf vorbereitet/konzipiert, basierend auf Berechtigungen zu filtern, wie oben erwähnt .
Einfache Antwort: Tust du nicht. Sie können jedoch gerne Google fragen. Wie der Benutzer Chahk sagte, erspart Ihnen die Weboberfläche ein paar Klicks, aber es gibt immer noch keine Möglichkeit, die Ergebnisse so zu filtern, wie Sie es wünschen.
Ein Umweg besteht darin, eine Java-App zu erstellen, die android-market-api verwendet . Derzeit kann die App anhand von „Schlüsselwörtern oder Paketnamen“ gesucht werden. Die Suchabfrage kann aufgebaut werden, um nach der erforderlichen Erlaubnis zu suchen, die gesucht wird. Wenig Hausaufgaben erforderlich, scheint aber nützlich zu sein.
Nach dem Herunterladen von androidmarketapi-0.6.jar und protobuf-java-2.2.0.jar (natürlich sollten Sie JRE bereits eingerichtet haben) können Sie Folgendes ausführen:
java -jar androidmarketapi-X.Y.jar myemail mypassword myquery
Sie müssen XY durch 0.6 ersetzen, da dies die aktuelle Version ist, und Anmeldeinformationen und Abfrage ersetzen. Zum Erstellen von Abfragen können Sie diese Seite besuchen.
Ich habe auch eine ähnliche Anwendung erstellt ( http://play.gqqnbig.me/ ). Der Quellcode befindet sich unter https://github.com/gqqnbig/advanced-play-search
Keine der hier genannten Lösungen funktioniert seit Februar 2018.
Also habe ich meine eigene einfache Lösung erstellt, die ich im Folgenden dokumentieren werde.
TL;DR: Verwenden Sie die API von AppBrain.
Erstellen Sie beispielsweise einen Ordner mit dem Namen appSearch
.
Melden Sie sich für ein Konto bei AppBrain an. Gehen Sie dann zu Ihrem Entwickler-Dashboard . Sie werden aufgefordert, die Entwickleroption für Ihr Konto zu aktivieren.
Navigieren Sie zur API-Zugriffsseite.
Kopieren Sie das Authentifizierungsfeld, das wie folgt aussieht, di=xxxx&t=zzzzz
und speichern Sie die Werte in einer Datei mit appBrain.json
dem folgenden Format:
{ „DI“ : „xxxx“, „TOKEN“ : „yyyy“ }
Laden Sie jetzt filter.js herunter und speichern Sie es im selben Ordner ('appSearch').
Installieren Sie Java 8+
Führen Sie den folgenden Befehl aus: jjs -scripting filter.js -- keyword
, wobei keyword ein beliebiger Suchbegriff sein kann.
Sie sollten eine Liste mit 50 Apps sehen, die Ihrem Suchbegriff entsprechen und nach der Anzahl der Berechtigungen sortiert sind, mit einem Link zu ihrer Play Store-Seite.
Bearbeiten: Der Code in filter.js
ist relativ einfach und kann an Ihre eigenen Kriterien angepasst werden, wenn Sie ein wenig Programmierkenntnisse haben. Ich werde versuchen, es in Zukunft besser konfigurierbar zu machen.
Das kostenlose Kontingent erlaubt eine begrenzte Anzahl von Abfragen pro Tag. Trotzdem können Sie ungefähr 30 Suchen pro Tag durchführen, was für den persönlichen Gebrauch ausreicht.
filter.js
, auf das ich verlinkt habe, ist Beispielcode, der angepasst werden kann (von jemandem, der sich mit Programmierung auskennt). Wenn ich mehr Zeit habe, werde ich es vielleicht für Nicht-Programmierer konfigurierbarer machen.Die Suche mit dem Berechtigungsnamen bedeutet immer noch, dass bestenfalls die Beschreibung der App durchsucht wird
Zum Beispiel: „GROBER (NETZWERKBASIERTER) STANDORT“ -> Wenn Sie danach suchen, werden Anwendungen aufgelistet, in deren Beschreibungen diese Informationen aufgeführt sind, aber die Registerkarte „Berechtigungen“ kann nicht durchsucht werden.
Wenn Google erlauben würde, die Informationen aller Apps zu kratzen, wie ich es tat, dann könnte ich der Welt eine Suchmaschine zur Verfügung stellen, um Apps anhand der erforderlichen Berechtigungen zu durchsuchen :)
iOS
Chahk
Fluss
Marcel
Chahk
Marcel
sancho.s ReinstateMonicaCellio
sancho.s ReinstateMonicaCellio
sancho.s ReinstateMonicaCellio