Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 11 additions & 6 deletions .github/workflows/android-release-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,12 @@ jobs:
# ADFA-4533: GlitchTip DSN for release builds
SENTRY_DSN_RELEASE: ${{ secrets.SENTRY_DSN_RELEASE }}
run: |
# Release tags ship a clean version (v0.7.0-beta), no commit hash. build.gradle only
# Release tags ship a clean version (v1.0.0), no commit hash. build.gradle only
# falls back to the git SHA suffix when versionSuffix is absent; pass it empty here.
# In-APK traceability is unaffected: BuildConfig.GIT_SHA still records the commit.
./gradlew assembleStandardRelease \
# K2GO-431: build both flavors. standard -> GitHub + R2 + OTA update.json (as before);
# fdroid -> R2 only (F-Droid distributes it; it carries no in-app OTA).
./gradlew assembleStandardRelease assembleFdroidRelease \
-PversionSuffix="" \
-Pandroid.injected.signing.store.file=$(pwd)/keystore.jks \
-Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD \
Expand All @@ -86,7 +88,7 @@ jobs:
uses: actions/upload-artifact@v6
with:
name: k2go-apks-release
path: controller/**/build/outputs/apk/standard/release/*.apk
path: controller/**/build/outputs/apk/*/release/*.apk
retention-days: 7

# --- GITHUB RELEASES ---
Expand All @@ -113,8 +115,10 @@ jobs:
R2_ACCOUNT_ID: ${{ vars.CLOUDFLARE_ACCOUNT_ID }}
BUCKET_NAME: "k2go-apk-repo"
run: |
# Loop through all generated APKs (universal, arm64, armeabi) and upload them
for apk in $(find . -path "*/build/outputs/apk/release/*.apk"); do
# K2GO-431: upload BOTH flavors (standard + fdroid) to R2. The flavor dir sits between
# apk/ and release/ (apk/standard/release, apk/fdroid/release); the old apk/release path
# never matched a flavored build.
for apk in $(find . -path "*/build/outputs/apk/*/release/*.apk"); do
filename=$(basename "$apk")
echo "Uploading $filename to Cloudflare R2 ($BUCKET_NAME)..."

Expand Down Expand Up @@ -159,7 +163,8 @@ jobs:
echo "Changelog:"; printf '%s\n' "$CHANGELOG"

# Built APK basenames per ABI (the binaries just uploaded to R2).
find_apk() { find controller -path "*/build/outputs/apk/release/*$1*.apk" -printf '%f\n' | head -1; }
# OTA update.json covers the standard flavor only (fdroid ships with OTA disabled).
find_apk() { find controller -path "*/build/outputs/apk/standard/release/*$1*.apk" -printf '%f\n' | head -1; }
# The APK filenames abbreviate the split's ABI (arm64-v8a -> v8a); see build.gradle.
APK_ARM64=$(find_apk "-v8a-")
APK_ARM32=$(find_apk "-v7a-")
Expand Down
4 changes: 2 additions & 2 deletions controller/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,12 @@ android {

// 3. Version Control (OTA)
// NOTE: With splits enabled, this number will be multiplied by 10 (e.g. 50 -> 500, 501, 502)
versionCode 62
versionCode 63
// Dynamic version suffix: CI passes -PversionSuffix explicitly; local builds fall back to
// the git short SHA (ADFA-4787) so any installed APK is traceable to its commit.
def ciSuffix = project.hasProperty('versionSuffix') ? project.property('versionSuffix')
: (project.ext.gitSha ? "-${project.ext.gitSha}" : "")
versionName "v0.9.0-beta${ciSuffix}"
versionName "v1.0.0${ciSuffix}"
buildConfigField "String", "GIT_SHA", "\"${project.ext.gitSha}\""
// Analytics is a per-flavor property (see productFlavors): the "standard" flavor turns it on
// when google-services.json is present; "fdroid" forces it off. The safe default here is OFF.
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-ar/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">تم الحفظ</string>
<string name="settings_saved">تم حفظ الإعدادات</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">بدعم من App Dev for All</string>
<string name="setup_manage_all_permissions">إدارة جميع الأذونات</string>
Expand Down Expand Up @@ -469,7 +468,7 @@
<string name="setup_language_section">اللغة</string>
<string name="portal_download_started">جارٍ تنزيل %1$s…</string>
<string name="portal_download_failed">تعذّر بدء التنزيل.</string>
<string name="lohs_label">نقطة اتصال محلية فقط (تجريبي)</string>
<string name="lohs_label">نقطة اتصال محلية فقط</string>
<string name="lohs_hint">تنشئ شبكة واي فاي محلية حتى يتمكن الأشخاص من الاتصال دون شريحة SIM.</string>
<string name="lohs_toggle">تفعيل نقطة الاتصال المحلية فقط</string>
<string name="lohs_show_qr">عرض رمز QR للواي فاي</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-az/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Yadda saxlanıldı</string>
<string name="settings_saved">Tənzimləmələr yadda saxlanıldı</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">App Dev for All tərəfindən təmin edilir</string>
<string name="setup_manage_all_permissions">Bütün icazələri idarə et</string>
Expand Down Expand Up @@ -475,7 +474,7 @@
<string name="portal_download_started">%1$s endirilir…</string>
<string name="portal_download_failed">Endirmə başladıla bilmədi.</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">İnsanların SIM olmadan qoşula bilməsi üçün yerli Wi-Fi şəbəkəsi yaradır.</string>
<string name="lohs_toggle">Hotspot LocalOnly-ni aktivləşdir</string>
<string name="lohs_show_qr">Wi-Fi QR göstər</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-bg/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Запазено</string>
<string name="settings_saved">Настройките са запазени</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">осигурено от App Dev for All</string>
<string name="setup_manage_all_permissions">Управление на всички разрешения</string>
Expand Down Expand Up @@ -475,7 +474,7 @@
<string name="portal_download_started">Изтегляне на %1$s…</string>
<string name="portal_download_failed">Изтеглянето не можа да започне.</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">Създава локална Wi-Fi мрежа, за да могат хората да се свързват без SIM.</string>
<string name="lohs_toggle">Активирай Hotspot LocalOnly</string>
<string name="lohs_show_qr">Покажи Wi-Fi QR</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-bn/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">সংরক্ষিত হয়েছে</string>
<string name="settings_saved">সেটিংস সংরক্ষিত হয়েছে</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">powered by App Dev for All</string>
<string name="setup_manage_all_permissions">সমস্ত অনুমতি পরিচালনা করুন</string>
Expand Down Expand Up @@ -469,7 +468,7 @@
<string name="setup_language_section">ভাষা</string>
<string name="portal_download_started">%1$s ডাউনলোড হচ্ছে…</string>
<string name="portal_download_failed">ডাউনলোড শুরু করা যায়নি।</string>
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">একটি লোকাল Wi-Fi নেটওয়ার্ক তৈরি করে যাতে লোকেরা SIM ছাড়াই সংযোগ করতে পারে।</string>
<string name="lohs_toggle">Hotspot LocalOnly সক্ষম করুন</string>
<string name="lohs_show_qr">Wi-Fi QR দেখান</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-cs/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Uloženo</string>
<string name="settings_saved">Nastavení uloženo</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">poháněno App Dev for All</string>
<string name="setup_manage_all_permissions">Spravovat všechna oprávnění</string>
Expand Down Expand Up @@ -475,7 +474,7 @@
<string name="portal_download_started">Stahování %1$s…</string>
<string name="portal_download_failed">Nepodařilo se zahájit stahování.</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">Vytvoří místní síť Wi-Fi, aby se lidé mohli připojit bez SIM.</string>
<string name="lohs_toggle">Zapnout Hotspot LocalOnly</string>
<string name="lohs_show_qr">Zobrazit QR Wi-Fi</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-de/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Gespeichert</string>
<string name="settings_saved">Einstellungen gespeichert</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">unterstützt von App Dev for All</string>
<string name="setup_manage_all_permissions">Alle Berechtigungen verwalten</string>
Expand Down Expand Up @@ -469,7 +468,7 @@
<string name="setup_language_section">Sprache</string>
<string name="portal_download_started">%1$s wird heruntergeladen…</string>
<string name="portal_download_failed">Der Download konnte nicht gestartet werden.</string>
<string name="lohs_label">Hotspot Nur-Lokal (BETA)</string>
<string name="lohs_label">Hotspot Nur-Lokal</string>
<string name="lohs_hint">Erstellt ein lokales WLAN, damit sich Personen ohne SIM verbinden können.</string>
<string name="lohs_toggle">Hotspot Nur-Lokal aktivieren</string>
<string name="lohs_show_qr">WLAN-QR anzeigen</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-el/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Αποθηκεύτηκε</string>
<string name="settings_saved">Οι ρυθμίσεις αποθηκεύτηκαν</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">powered by App Dev for All</string>
<string name="setup_manage_all_permissions">Διαχείριση όλων των αδειών</string>
Expand Down Expand Up @@ -475,7 +474,7 @@
<string name="portal_download_started">Λήψη %1$s…</string>
<string name="portal_download_failed">Δεν ήταν δυνατή η έναρξη της λήψης.</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">Δημιουργεί ένα τοπικό δίκτυο Wi-Fi ώστε οι άνθρωποι να μπορούν να συνδεθούν χωρίς SIM.</string>
<string name="lohs_toggle">Ενεργοποίηση Hotspot LocalOnly</string>
<string name="lohs_show_qr">Εμφάνιση QR Wi-Fi</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-es/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Guardado</string>
<string name="settings_saved">Ajustes Guardados</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">powered by App Dev for All</string>
<string name="update_dialog_title">Nueva versión disponible: %1$s</string>
Expand Down Expand Up @@ -543,7 +542,7 @@
<string name="portal_download_started">Descargando %1$s…</string>
<string name="portal_download_failed">No se pudo iniciar la descarga.</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">Crea una red Wi-Fi local para conectarse sin SIM.</string>
<string name="lohs_toggle">Activar Hotspot LocalOnly</string>
<string name="lohs_show_qr">Mostrar QR de Wi-Fi</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-fa/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">ذخیره شد</string>
<string name="settings_saved">تنظیمات ذخیره شد</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">قدرت‌گرفته از App Dev for All</string>
<string name="setup_manage_all_permissions">مدیریت همه مجوزها</string>
Expand Down Expand Up @@ -469,7 +468,7 @@
<string name="setup_language_section">زبان</string>
<string name="portal_download_started">در حال دانلود %1$s…</string>
<string name="portal_download_failed">دانلود شروع نشد.</string>
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">یک شبکه Wi-Fi محلی ایجاد می‌کند تا افراد بتوانند بدون SIM متصل شوند.</string>
<string name="lohs_toggle">فعال کردن Hotspot LocalOnly</string>
<string name="lohs_show_qr">نمایش QR Wi-Fi</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-fr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Enregistré</string>
<string name="settings_saved">Paramètres enregistrés</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">powered by App Dev for All</string>

Expand Down Expand Up @@ -544,7 +543,7 @@
<string name="portal_download_started">Téléchargement de %1$s…</string>
<string name="portal_download_failed">Impossible de démarrer le téléchargement.</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">Crée un réseau Wi-Fi local pour se connecter sans carte SIM.</string>
<string name="lohs_toggle">Activer Hotspot LocalOnly</string>
<string name="lohs_show_qr">Afficher le QR Wi-Fi</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-gu/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">સાચવ્યું</string>
<string name="settings_saved">સેટિંગ્સ સાચવ્યાં</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">App Dev for All દ્વારા સંચાલિત</string>
<string name="setup_manage_all_permissions">બધી પરવાનગીઓ મેનેજ કરો</string>
Expand Down Expand Up @@ -469,7 +468,7 @@
<string name="setup_language_section">ભાષા</string>
<string name="portal_download_started">%1$s ડાઉનલોડ થઈ રહ્યું છે…</string>
<string name="portal_download_failed">ડાઉનલોડ શરૂ કરી શકાયું નહીં.</string>
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">એક સ્થાનિક Wi-Fi નેટવર્ક બનાવે છે જેથી લોકો SIM વિના કનેક્ટ થઈ શકે.</string>
<string name="lohs_toggle">Hotspot LocalOnly ચાલુ કરો</string>
<string name="lohs_show_qr">Wi-Fi QR બતાવો</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-hi/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">सहेजा गया</string>
<string name="settings_saved">सेटिंग्स सहेजी गईं</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">powered by App Dev for All</string>

Expand Down Expand Up @@ -544,7 +543,7 @@
<string name="portal_download_started">%1$s डाउनलोड हो रहा है…</string>
<string name="portal_download_failed">डाउनलोड शुरू नहीं हो सका।</string>
<!-- ADFA-4520: LocalOnlyHotspot (LOHS) fallback -->
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">बिना SIM के जुड़ने के लिए एक स्थानीय Wi-Fi नेटवर्क बनाता है।</string>
<string name="lohs_toggle">Hotspot LocalOnly चालू करें</string>
<string name="lohs_show_qr">Wi-Fi QR दिखाएँ</string>
Expand Down
3 changes: 1 addition & 2 deletions controller/app/src/main/res/values-hu/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@
<string name="pref_file_internal">IIAB_Internal</string>
<string name="saved_toast">Mentve</string>
<string name="settings_saved">Beállítások mentve</string>
<string name="version_footer_fallback">Knowledge to Go · 2026 · v0.3.xbeta</string>
<string name="version_footer_format">Knowledge to Go · 2026 · %1$s</string>
<string name="splash_powered_by">az App Dev for All szolgáltatásában</string>
<string name="setup_manage_all_permissions">Összes engedély kezelése</string>
Expand Down Expand Up @@ -469,7 +468,7 @@
<string name="setup_language_section">Nyelv</string>
<string name="portal_download_started">%1$s letöltése…</string>
<string name="portal_download_failed">Nem sikerült elindítani a letöltést.</string>
<string name="lohs_label">Hotspot LocalOnly (BETA)</string>
<string name="lohs_label">Hotspot LocalOnly</string>
<string name="lohs_hint">Helyi Wi-Fi hálózatot hoz létre, hogy az emberek SIM nélkül is csatlakozhassanak.</string>
<string name="lohs_toggle">Hotspot LocalOnly engedélyezése</string>
<string name="lohs_show_qr">Wi-Fi QR megjelenítése</string>
Expand Down
Loading
Loading