AgoraDesk will be winding down

The winding down process begins May 7th, 2024, and finishes after November 7th, 2024. Our support staff will be available for help throughout this period.
  1. Effective immediately, all new signups and ad postings are disabled;
  2. On May 14th, 2024, new trades will be disabled as well;
  3. After November 7th, 2024, the website will be taken down. Please reclaim any funds from your arbitration bond wallet prior to that date, otherwise the funds may be considered abandoned/forfeited.

Wie veröffentliche ich meine Flutter-App mit Geschmacksrichtungen auf F-Droid?

Veröffentlicht:
By Ami

F-Droid ist ein installierbarer Katalog von FOSS-Anwendungen (Free and Open Source Software) für die Android-Plattform. Der Client erleichtert das Durchsuchen, Installieren und Verfolgen von Updates auf Ihrem Gerät. F-Droid-Website

Alle Schritte aus diesem Tutorial funktionieren auch für eine App ohne Flavors.


Welche Apps können in F-Droid integriert werden?

Die App kann nur dann in F-Droid eingebunden werden, wenn sie vollständig Open Source ist – einschließlich aller verwendeten Bibliotheken und Abhängigkeiten. Erfahren Sie mehr über die Einschlussrichtlinie hier.

Wenn Sie beispielsweise die ObjectBox-Datenbank in Ihrer App verwenden, kann diese nicht in F-Droid eingebunden werden (Diskussion).


Schritt 1

  • Fork fdroiddata-Repository auf Gitlab.
  • Klonen Sie das Repository auf Ihr Gerät.
  • Erstellen Sie einen Zweig mit der Bundle-ID der App, zum Beispiel co.localmonero.app

Schritt 2

Überprüfen Sie, ob fdroid ordnungsgemäß funktioniert. Führen Sie die folgenden Befehle in Ihrem Ordner fdroid aus:

fdroid init
fdroid readmeta

Schritt 3

Fügen Sie Ihr Projekt hinzu:

fdroid import --url https://github.com/YOUR_REPO --subdir app

Es wird eine Datei im Metadatenverzeichnis erstellt, zum Beispiel metadata/co.localmonero.app.yml. Sie können diese Datei auch manuell erstellen.


Schritt 4

Öffnen Sie die Datei und bearbeiten Sie sie. Hier ist ein Beispiel: https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/co.localmonero.app.yml.

Im Beispiel sehen Sie:

  1. Flutter wird als Submodul verwendet – dies ist eine Anforderung des F-Droid-Teams.
  2. Für jede Variante haben wir einen separaten Zweig verwendet (Befehl AutoUpdateMode: Version %v-fdroid-lm). Das liegt daran, dass Fastlane keine Flavors mit Flutter unterstützt.
  3. Wenn wir Build-Informationen zum ersten Mal manuell hinzufügen, werden sie in Zukunft automatisch von einem Bot hinzugefügt, nachdem wir ein neues Tag gepusht haben.

Überprüfen Sie, ob die Datei die richtige Syntax hat: fdroid readmeta.


Schritt 5

Fügen wir nun Daten für den F-Droid-Markt hinzu. Dafür erstellen wir für jede Variante einen eigenen Zweig:

Danach erstellen wir einen Ordner für Fastlane: https://github.com/AgoraDesk-LocalMonero/agoradesk-app-foss/tree/fdroid_ad/fastlane/metadata/android/en-US.

Fügen Sie die erforderlichen Daten hinzu und übertragen Sie sie.


Schritt 6

Es ist Zeit, die App zu F-Droid hinzuzufügen.

  1. Erstellen Sie ein Tag in Ihrem App-Repository.
  2. Push-Änderungen am F-Droid-Repository auf Gitlab.
  3. Stellen Sie eine Zusammenführungsanforderung im Gitlab-Repository. Verwenden Sie die ID Ihrer App im Titel.
  4. Warten Sie auf eine Rezension vom F-Droid-Team.

Abschluss

Der Prozess ist etwas kompliziert und es können dabei verschiedene Probleme auftreten. Aber sobald Sie das CI eingerichtet haben, werden die folgenden Updates automatisch durchgeführt.

Falls Sie Fragen haben, können Sie diese gerne auf unserem GitHub stellen.