diff --git a/assets/translations/bs.json b/assets/translations/bs.json index bce4d2f..d03e918 100644 --- a/assets/translations/bs.json +++ b/assets/translations/bs.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Probajte izabrati preloženu (verziju) versionCode APK-a", "dontSortReleasesList": "Zadrži redosled izdanja iz API-a", "reverseSort": "Obrni redosled", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Meni za otkrivanje grešaka", "bgTaskStarted": "Rad u pozadini pokrenut - provjerite log-ove.", "runBgCheckNow": "Pokrenite pozadinsku provjeru ažuriranja sad", diff --git a/assets/translations/cs.json b/assets/translations/cs.json index 13d68b7..2e44a68 100644 --- a/assets/translations/cs.json +++ b/assets/translations/cs.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Zkusit vybrat navrhovaný kód verze APK", "dontSortReleasesList": "Retain release order from API", "reverseSort": "Reverse sorting", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Debug Menu", "bgTaskStarted": "Background task started - check logs.", "runBgCheckNow": "Run Background Update Check Now", diff --git a/assets/translations/de.json b/assets/translations/de.json index d0a21b4..fae8d4d 100644 --- a/assets/translations/de.json +++ b/assets/translations/de.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Versuchen, den vorgeschlagenen APK-Versionscode auszuwählen", "dontSortReleasesList": "Freigaberelease von der API ordern", "reverseSort": "Umgekehrtes Sortieren", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Debug-Menü", "bgTaskStarted": "Hintergrundaufgabe gestartet – Logs prüfen.", "runBgCheckNow": "Hintergrundaktualisierungsprüfung jetzt durchführen", diff --git a/assets/translations/en.json b/assets/translations/en.json index 7ca1199..fef8f24 100644 --- a/assets/translations/en.json +++ b/assets/translations/en.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Try selecting suggested versionCode APK", "dontSortReleasesList": "Retain release order from API", "reverseSort": "Reverse sorting", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Debug Menu", "bgTaskStarted": "Background task started - check logs.", "runBgCheckNow": "Run Background Update Check Now", diff --git a/assets/translations/es.json b/assets/translations/es.json index f14c2d9..f3a07c1 100644 --- a/assets/translations/es.json +++ b/assets/translations/es.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Prueba seleccionando la versionCode APK sugerida", "dontSortReleasesList": "Mantener el order de publicación desde API", "reverseSort": "Orden inverso", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Menu Depurar", "bgTaskStarted": "Iniciada tarea en segundo plano - revisa los logs.", "runBgCheckNow": "Ejecutar verficiación de actualizaciones en segundo plano", diff --git a/assets/translations/fa.json b/assets/translations/fa.json index 1369e5e..9af4cf6 100644 --- a/assets/translations/fa.json +++ b/assets/translations/fa.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "نسخه پیشنهادی APK نسخه کد را انتخاب کنید", "dontSortReleasesList": "حفظ سفارش انتشار از API", "reverseSort": "مرتب سازی معکوس", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "منوی اشکال زدایی", "bgTaskStarted": "کار پس زمینه شروع شد - لاگ های مربوط را بررسی کنید.", "runBgCheckNow": "اکنون به‌روزرسانی پس‌زمینه را بررسی کنید", diff --git a/assets/translations/fr.json b/assets/translations/fr.json index 99fedc1..6322972 100644 --- a/assets/translations/fr.json +++ b/assets/translations/fr.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Try selecting suggested versionCode APK", "dontSortReleasesList": "Retain release order from API", "reverseSort": "Reverse sorting", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Debug Menu", "bgTaskStarted": "Background task started - check logs.", "runBgCheckNow": "Run Background Update Check Now", diff --git a/assets/translations/hu.json b/assets/translations/hu.json index 51ec62a..8e23dd3 100644 --- a/assets/translations/hu.json +++ b/assets/translations/hu.json @@ -260,6 +260,8 @@ "trySelectingSuggestedVersionCode": "Próbálja ki a javasolt verziókódú APK-t", "dontSortReleasesList": "Az API-ból származó kiadási sorrend megőrzése", "reverseSort": "Fordított rendezés", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Hibakereső menü", "bgTaskStarted": "A háttérfeladat elindult – ellenőrizze a naplókat.", "enableBackgroundUpdates": "Frissítések a háttérben", diff --git a/assets/translations/it.json b/assets/translations/it.json index 84f6bec..34a7ea2 100644 --- a/assets/translations/it.json +++ b/assets/translations/it.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Prova a selezionare APK con versionCode suggerito", "dontSortReleasesList": "Conserva l'ordine di release da API", "reverseSort": "Ordine inverso", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Menu di debug", "bgTaskStarted": "Attività in secondo piano iniziata - controllo log.", "runBgCheckNow": "Inizia aggiornamento in secondo piano ora", diff --git a/assets/translations/ja.json b/assets/translations/ja.json index 56ef8da..3fd43f0 100644 --- a/assets/translations/ja.json +++ b/assets/translations/ja.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "提案されたバージョンコードのAPKを選択する", "dontSortReleasesList": "APIからのリリース順を保持する", "reverseSort": "逆順ソート", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "デバッグメニュー", "bgTaskStarted": "バックグラウンドタスクが開始されました - ログを確認してください。", "runBgCheckNow": "今すぐバックグラウンドでのアップデート確認を開始する", diff --git a/assets/translations/nl.json b/assets/translations/nl.json index e41109e..678d21d 100644 --- a/assets/translations/nl.json +++ b/assets/translations/nl.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Probeer de voorgestelde versiecode APK te selecteren", "dontSortReleasesList": "Volgorde van releases behouden vanuit de API", "reverseSort": "Sortering omkeren", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Debug menu", "bgTaskStarted": "Achtergrondtaak gestart - controleer de logs.", "runBgCheckNow": "Voer nu een achtergrondupdatecontrole uit", diff --git a/assets/translations/pl.json b/assets/translations/pl.json index 3aa8ff6..2c340e0 100644 --- a/assets/translations/pl.json +++ b/assets/translations/pl.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Spróbuj wybierać sugerowany kod wersji APK", "dontSortReleasesList": "Utrzymaj kolejność wydań z interfejsu API", "reverseSort": "Odwrotne sortowanie", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Menu debugowania", "bgTaskStarted": "Uruchomiono zadanie w tle - sprawdź logi.", "runBgCheckNow": "Wymuś sprawdzenie aktualizacji w tle", diff --git a/assets/translations/pt.json b/assets/translations/pt.json index 682b979..eed4690 100644 --- a/assets/translations/pt.json +++ b/assets/translations/pt.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Tente selecionar a versão sugerida", "dontSortReleasesList": "Reter a ordem de lançamento da API", "reverseSort": "Ordenação reversa", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Menu Debug", "bgTaskStarted": "Tarefa em segundo plano iniciada - verifique os logs.", "runBgCheckNow": "Execute a verificação de atualização em segundo plano agora", diff --git a/assets/translations/ru.json b/assets/translations/ru.json index 4ed363d..03a73e2 100644 --- a/assets/translations/ru.json +++ b/assets/translations/ru.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Попробуйте выбрать предложенный код версии APK", "dontSortReleasesList": "Сохранить порядок релизов от API", "reverseSort": "Обратная сортировка", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Меню отладки", "bgTaskStarted": "Фоновая задача начата — проверьте журналы", "runBgCheckNow": "Запустить проверку фонового обновления сейчас", diff --git a/assets/translations/sv.json b/assets/translations/sv.json index 1c316f8..e0bf922 100644 --- a/assets/translations/sv.json +++ b/assets/translations/sv.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Try selecting suggested versionCode APK", "dontSortReleasesList": "Retain release order from API", "reverseSort": "Omvänd sortering", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Felsökningsmeny", "bgTaskStarted": "Background task started - check logs.", "runBgCheckNow": "Kör Bakgrundsuppdateringskoll Nu", diff --git a/assets/translations/tr.json b/assets/translations/tr.json index 2d08175..e78901a 100644 --- a/assets/translations/tr.json +++ b/assets/translations/tr.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Önerilen sürüm kodunu seçmeyi dene", "dontSortReleasesList": "API'den sıralama düzenini koru", "reverseSort": "Ters sıralama", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Hata Ayıklama Menüsü", "bgTaskStarted": "Arka plan görevi başladı - günlükleri kontrol et.", "runBgCheckNow": "Arka Plan Güncelleme Kontrolünü Şimdi Çalıştır", diff --git a/assets/translations/vi.json b/assets/translations/vi.json index 5d8e6d3..a4201ce 100644 --- a/assets/translations/vi.json +++ b/assets/translations/vi.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "Thử chọn APK Mã phiên bản được đề xuất", "dontSortReleasesList": "Giữ lại thứ tự phát hành từ API", "reverseSort": "Sắp xếp ngược", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "Danh sách gỡ lỗi", "bgTaskStarted": "Tác vụ nền đã bắt đầu - kiểm tra nhật ký.", "runBgCheckNow": "Chạy kiểm tra cập nhật nền ngay bây giờ", diff --git a/assets/translations/zh.json b/assets/translations/zh.json index 1c4640a..c7e25cb 100644 --- a/assets/translations/zh.json +++ b/assets/translations/zh.json @@ -261,6 +261,8 @@ "trySelectingSuggestedVersionCode": "尝试选择推荐版本的 APK 文件", "dontSortReleasesList": "保持来自 API 的发行顺序", "reverseSort": "反转排序", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", "debugMenu": "调试选项", "bgTaskStarted": "后台任务已启动 - 详见日志", "runBgCheckNow": "立即进行后台更新检查", diff --git a/lib/app_sources/html.dart b/lib/app_sources/html.dart index 1d4e06f..81cb7ec 100644 --- a/lib/app_sources/html.dart +++ b/lib/app_sources/html.dart @@ -94,7 +94,8 @@ class HTML extends AppSource { GeneratedFormSwitch('sortByFileNamesNotLinks', label: tr('sortByFileNamesNotLinks')) ], - [GeneratedFormSwitch('reverseSort', label: tr('reverseSort'))], + [GeneratedFormSwitch('skipSort', label: tr('skipSort'))], + [GeneratedFormSwitch('reverseSort', label: tr('takeTopLink'))], [ GeneratedFormSwitch('supportFixedAPKURL', defaultValue: true, label: tr('supportFixedAPKURL')), @@ -185,12 +186,15 @@ class HTML extends AppSource { .toList(); } List links = []; + bool skipSort = additionalSettings['skipSort'] == true; if ((additionalSettings['intermediateLinkRegex'] as String?) ?.isNotEmpty == true) { var reg = RegExp(additionalSettings['intermediateLinkRegex']); links = allLinks.where((element) => reg.hasMatch(element)).toList(); - links.sort((a, b) => compareAlphaNumeric(a, b)); + if (!skipSort) { + links.sort((a, b) => compareAlphaNumeric(a, b)); + } if (links.isEmpty) { throw ObtainiumError(tr('intermediateLinkNotFound')); } @@ -211,10 +215,14 @@ class HTML extends AppSource { Uri.parse(element).path.toLowerCase().endsWith('.apk')) .toList(); } - links.sort((a, b) => additionalSettings['sortByFileNamesNotLinks'] == true - ? compareAlphaNumeric(a.split('/').where((e) => e.isNotEmpty).last, - b.split('/').where((e) => e.isNotEmpty).last) - : compareAlphaNumeric(a, b)); + if (!skipSort) { + links.sort((a, b) => + additionalSettings['sortByFileNamesNotLinks'] == true + ? compareAlphaNumeric( + a.split('/').where((e) => e.isNotEmpty).last, + b.split('/').where((e) => e.isNotEmpty).last) + : compareAlphaNumeric(a, b)); + } if (additionalSettings['reverseSort'] == true) { links = links.reversed.toList(); }