Google Play Store-Kategorie von Apps finden

Stellt ein Entwickler seine Android-App im Google Play Store ein, muss er eine der – von Google vorgegebenen – Kategorien auswählen, in die die App gehört. Die Kategorie ist dabei nur dem Eintrag im Google Play Store zugeordnet und nicht teil der App selbst.

Möchte man nun zu einer App die zugehörige Kategorie finden, kann man dies anhand des Namens aber auch des Paketnamens suchen. Hier ein Beispiel: https://play.google.com/store/search?q=friendstatus%20de.izeland.friendstatus&c=apps.

Um die Kategorie zu finden, muss man von dieser Ergebnisseite zum Store-Eintrag der jeweiligen App weiterklicken. In der Beschreibung und dem zugehörigen Quelltext der Seite ist die Kategorie auf Englisch und Deutsch verfügbar.

Um alle Apps aus dem Datensatz meiner Masterarbeit zur kategorisieren habe ich ein simples Tool geschrieben, was den eben beschriebenen Vorgang automatisiert:

1. Aus den Apps (genauer einem Ordner mit den *.apk-Dateien) den Namen und den Paketnamen jeder App auslesen.

2. Im Google Play Store als Suchbegriff eingeben und den passenden Eintrag (in der  Regel ist dies der erste) der Suchergebnisse auswählen.

3. Auf der Beschreibungsseite der App die Kategorie extrahieren.

4. Die App auf dem eigenen System in den entsprechenden Ordner der Kategorie verschieben.

Dieses Tool wurde nur als Hilfsmittel programmiert und der Nutzer sollte sich den Quelltext vielleicht anschauen und auf seine Bedürfnisse anpassen. Für größere Datensätze kann eventuell der Heap nicht ausreichen – Fix: -Xmx1024M beim Ausführen der JavaVM angeben.

Bei mir ist es häufig vorgekommen, dass Apps, die beim ersten Durchlauf nicht zu kategorisieren waren, aufgrund eines anderen Fehlers nicht gefunden werden konnten und ein zweiter, dritter, etc. Durchlauf später zum Erfolg führte.

Bisher ist mir kein besserer Ansatz als dieser eingefallen und das Ergebnis ist leider nur teilweise befriedigend. Ich habe meine knapp 140.000 Apps sortieren können, wobei ca. die Hälfte nicht eingruppiert werden konnte (was vielleicht am Datensatz liegen mag, da nicht alle aus dem Play Store stammen). Vielleicht hilft es dennoch jemandem, der seine Apps anhand der Google Play Store Kategorien sortieren muss / möchte und er findet hiermit einen ersten Versuch.

Category Finder
Category Finder
Category Finder.zip
Version: 1.0
4.3 MiB
104 Downloads
Details

App-Checker Desktop: A Java Static Feature Generator for APK-Files

Dieses Tool mit dem Namen „App-Checker Desktop“ ist in der Lage aus einer *.apk-Datei – also einer Android-App – die unten genannten Merkmale zu extrahieren.

Hintergrund: Dieses Tool, was kurzfristig den Namen „App-Checker Desktop“ erhalten hat, entstand während der Projektphase zu meiner Masterarbeit und ist die Desktop-Version der im Rahmen dieses Projektes entwickelten App (dem App-Checker).

Motivation: Damit der App-Checker mittels der Methode  „Drebin“ Vorhersagen über die Bös- oder Gutartigkeit dritter Apps – auf dem Android-Gerät – machen kann, muss er in der Lage sein aus einer *.apk-Datei die gleichen Merkmale zu extrahieren, wie es der Webservice Mobile Sandbox tut. Mit der hier vorgestellten Desktop-Version kann man nun unabhängig von Android-Gerät oder der Mobile Sandbox die folgenden Merkmale auf dem Rechner generieren:

Aus dem Android-Manifest:

1. Angeforderte Rechte der App
2. Angeforderte Hard- und Software
3. Intents
4. Activities
5. Services
6. ContentProvider
7. Broadcast Reciever

Aus dem dexdump -d – Auszug (Assambler der App):
1. Benutzte Rechte
2. Benutzte API-Aufrufe, die Rechte benötigen
3. Benutzte gefährliche API-Aufrufe (können selbst festgelegt werden)
4. Benutzte „Networks“
5. Gefundene URLs und IPs

Ist man nicht wie ich an Java als Programmiersprache gebunden empfehle ich für diesen Anwendungsfall androguard.

 

AppChecker Desktop
AppChecker Desktop
AppChecker Desktop.zip
Version: 1.0
3.8 MiB
117 Downloads
Details