F-Droid unterstützt APK-Erweiterungsdateien auch bekannt als OBB

Viele Spiele, Kartenwerkzeuge und andere Apps benötigen für ihren Betrieb große Datenmengen. Die Größe einer APK-Datei für eine Android-App ist auf 100 MB begrenzt, wobei gewöhnlich eine Datei für eine einzige Landkarte schon weit mehr als 100 MB benötigt. Damit Nutzer Apps möglichst schnell zum Laufen bringen, sollten sie somit vor dem ersten App-Start nicht den Download riesiger Datenmengen abwarten müssen.

Google created OBB aka “APK Expansion” files to provide a flexible means of delivering large amounts of data. This arrangement also saves lots of bandwidth since the APK file and the OBB file can be updated separately. For example, a game’s assets do not need to change often, so they can be shipped as an OBB. Then when the app itself is updated (i.e. the APK), it does not need to include all those assets that are in the OBB file.

OBB-Dateien werden von vielen Apps wie Spielen oder MAPS.ME verwendet. F-Droid unterstützt OBB, indem die OBB vor der APK heruntergeladen und installiert werden kann, so dass die OBB-Dateien bereits an Ort und Stelle und gebrauchsfertig sind, wenn schließlich die APK installiert wird. F-Droid bietet auch eine ‘Intent‘-Methode für Apps an, um die Adresse (URL) für den OBB-Download abzurufen, für den Fall dass die App den Download/die Aktualisierung der OBB selbst erledigen muss. Die Funktionsweise ähnelt der in Google Play.

Um die OBB-Unterstützung nutzen zu können, benötigen Benutzer mindestens F-Droid v0.102 und das Repository muss fdroidserver_v0.7.0 oder neuer verwenden. Das Hinzufügen von OBB-Dateien zum Repository ist sehr leicht: Kopieren Sie sie einfach in den selben Ordner, in dem sich die APKs befinden, d. h. in _/Pfad/zu/fdroid/repo/.

Gebrauchsanweisung für Entwickler

Eine der Besonderheiten bei der Verwendung von OBB-Dateien in Apps ist es, dass deren Installation durch den App Store nicht garantiert wird. Das bedeutet, die App könnte starten, ohne dass die erwarteten OBB-Dateien vorhanden sind. In diesem Fall muss die App selbst den Download und die Installation der OBB-Datei durchführen. Google Play empfiehlt dafür die Verwendung seines proprietären Dienstes (s. [Application Licensing] https://developer.android.com/google/play/licensing/index.html), F-Droid stellt eine einfache Methode bereit, die auf völlig freier Software beruht.

Um die URL für die zwei möglichen OBB-Dateien zu erhalten, senden Sie einen ‘Intent‘ an F-Droid unter Verwendung dieser Actions:

  • org.fdroid.fdroid.action.GET_OBB_MAIN_URL
  • org.fdroid.fdroid.action.GET_OBB_PATCH_URL

Laden Sie dann die URL mit der von Ihnen favorisierten Methode herunter und stellen Sie sicher, dass die Datei letztlich in _Android/obb/_ auf dem externen Speicher des Geräts landet.