AgoraDesk will be winding down

The winding down process begins May 7th, 2024, and finishes on 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. On 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.

Cum să publici aplicația ta Flutter cu variații (flavors) pe F-Droid?

F-Droid este un catalog instalabil de aplicații FOSS (Free and Open Source Software) pentru platforma Android. Clientul facilitează navigarea, instalarea și urmărirea actualizărilor pe dispozitivul tău. Website-ul F-Droid

Toți pașii din acest tutorial vor funcționa și pentru o aplicație fără variante (flavors) de asemenea.


Ce aplicații pot fi incluse în F-Droid?

Aplicația poate fi inclusă în F-Droid doar dacă este complet open-source - inclusiv toate bibliotecile și dependențele utilizate. Aflați mai multe despre politica de includere aici.

De exemplu, dacă folosești baza de date ObjectBox în aplicația ta, aceasta nu poate fi inclusă în F-Droid (discuție).


Pasul 1

  • Creează un fork la repositoriul fdroiddata pe Gitlab.
  • Clonează repositoriul pe dispozitivul tău.
  • Creează o ramură cu ID-ul pachetului aplicației, de exemplu co.localmonero.app

Pasul 2

Verificați dacă fdroid funcționează corect. Rulați următoarele comenzi în folderul dvs. fdroid:

fdroid init
fdroid readmeta

Pasul 3

Adaugă proiectul tău:

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

Acesta va crea un fișier în directorul de metadate, de exemplu metadata/co.localmonero.app.yml. Poți, de asemenea, să creezi acest fișier manual.


Pasul 4

Deschide fișierul și editează-l. Iată un exemplu: https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/co.localmonero.app.yml.

În exemplul furnizat poți vedea:

  1. Flutter este folosit ca un submodul - aceasta este o cerință din partea echipei F-Droid.
  2. Pentru fiecare variație (flavor), am folosit o ramură separată (comanda AutoUpdateMode: Version %v-fdroid-lm). Asta deoarece Fastlane nu suportă variații cu Flutter.
  3. Prima dată adăugăm manual informațiile despre compilare, în viitor acestea vor fi adăugate automat de un bot, după ce vom trimite un nou tag.

Verifică dacă fișierul are o sintaxă corectă: fdroid readmeta.


Pasul 5

Acum, să adăugăm date pentru piața F-Droid. Pentru aceasta, creăm o ramură separată pentru fiecare variație (flavor):

După aceea, creăm un folder pentru Fastlane: https://github.com/AgoraDesk-LocalMonero/agoradesk-app-foss/tree/fdroid_ad/fastlane/metadata/android/en-US.

Adaugă datele necesare și publică-le.


Pasul 6

Este timpul să adăugăm aplicația la F-Droid.

  1. Creează un tag în depozitul aplicației tale.
  2. Publică modificările în depozitul F-Droid de pe Gitlab.
  3. Fă o cerere de îmbinare în depozitul Gitlab. Folosește id-ul aplicației tale în titlu.
  4. Așteaptă o recenzie din partea echipei F-Droid.

Concluzie

Procesul este puțin complicat și pot apărea diverse probleme pe parcurs. Dar odată ce ai configurat integrarea continuă (CI), următoarele actualizări vor fi gestionate automat.

În cazul în care ai întrebări, nu ezita să le pui pe pagina noastră de GitHub.