Jak wyszukiwać torrenty na Androidzie bez reklam i przekierowań przeglądarki

Szukanie torrentów na telefonie przez przeglądarkę nie jest dla osób o słabych nerwach. Otwierasz stronę, klikasz pole wyszukiwania i natychmiast zostajesz przekierowany na pięć stron kasyn, banerów i podejrzanych APK-ów. Kiedy w końcu zamykasz wszystkie zakładki i docierasz do upragnionego linku magnet, chęć pobrania czegokolwiek całkowicie znika.
Ostatnio natknąłem się na repozytorium TorrentSearch autorstwa dewelopera prajwalch. To elegancki klient Android do wyszukiwania w dziesiątkach trackerów jednocześnie. Projekt jest interesujący nie tylko z praktycznego punktu widzenia, ale także jako wyraźny przykład tego, jak budowane są nowoczesne aplikacje mobilne w Kotlin i Jetpack Compose.
Co potrafi aplikacja
TorrentSearch działa jako meta-wyszukiwarka. Wysyła zapytanie do wielu trackerów jednocześnie, parsuje odpowiedzi i wyświetla wszystko w ujednoliconej liście z filtrowaniem. Sama aplikacja nie pobiera ani nie rozsiewa niczego — nie ma wbudowanego klienta torrent. Zamiast tego przekazuje gotowy do użycia link magnet lub plik .torrent do ulubionego menedżera pobierania, takiego jak LibreTorrent czy Flud.
Strumieniowe wyświetlanie wyników i filtrowanie
Zazwyczaj meta-wyszukiwarki czekają na odpowiedź ze wszystkich źródeł, zanim wyświetlą wyniki. Tutaj wyniki napływają asynchronicznie. Gdy tylko pierwsza strona dostarczy dane, karty pojawiają się na ekranie natychmiast.
Lista pokazuje wszystkie niezbędne informacje na pierwszy rzut oka:
- Liczba seederów i peerów
- Dokładny rozmiar pliku
- Data publikacji
- Źródło torrenta
- Kategoria treści
Torrenty bez seederów można odfiltrować jednym przełącznikiem, aby nie tracić czasu na martwe torrenty. Dostępne są również wbudowane opcje sortowania według rozmiaru, daty lub liczby seederów.
Natywny ekran szczegółów bez WebView
Większość podobnych narzędzi otwiera stronę torrenta w osadzonym браузере, zbierając wszystkie reklamy trackera. W TorrentSearch parsowanie stron odbywa się wewnątrz aplikacji.
Otwierasz kartę i widzisz czysty natywny ekran z plakatem, zrzutami ekranu, opisem i danymi technicznymi torrenta. Jeśli opis zawiera obrazy, są one renderowane bezpośrednio w układzie. W przypadku plakatów treści dla dorosłych stosowane jest automatyczne rozmycie, które można wyłączyć w ustawieniach.
Wsparcie Torznab dla domowych serwerów
Jeśli wbudowane dostawcy nie są wystarczający, możesz podłączyć własne indexery przez API Torznab. Aplikacja bezproblemowo łączy się z Jackett, Prowlarr lub innymi usługami z ekosystemu domowego serwera medialnego. Rozwiązuje to problem dostępu do prywatnych trackerów bezpośrednio z telefonu.
Zakładki i eksport
Ulubione torrenty można zapisać w zakładkach. Baza danych zakładek eksportuje i importuje przez JSON, co ułatwia przenoszenie listy podczas zmiany telefonu.
Pod maską: przegląd architektury
Dla deweloperów Androida repozytorium jest cenne przede wszystkim ze względu na bazę kodu. Projekt podąża za wytycznymi Modern App Architecture od Google i jest w pełni open source na licencji MIT.
Stos technologiczny projektu:
- Język: Kotlin
- UI: Jetpack Compose z Material 3 i obsługą dynamicznych kolorów systemu
- Networking: Ktor Client
- Parsowanie HTML: Jsoup
- Dane lokalne: Room i Jetpack DataStore
- Wstrzykiwanie zależności: Hilt
- Async: Kotlin Coroutines i Flow
- Ładowanie obrazów: Coil
Kod jest odświeżająco czysty, bez żadnych hackowatych obejść. Żądania sieciowe do publicznych trackerów są parsowane za pomocą Jsoup i Ktor, a wyniki są przesyłane strumieniowo do UI przez Flow. Pozwala to na płynne aktualizacje interfejsu Compose w miarę napływania nowych partii danych.
Jak zbudować projekt lokalnie
Budowanie nie wymaga żadnych specjalnych sztuczek. Wystarczy otworzyć folder w Android Studio lub zbudować APK przez terminal.
Przed budowaniem będziesz potrzebować:
- JDK w wersji 17 lub nowszej
- Zainstalowany Android SDK
Sklonuj repozytorium i uruchom build debug:
git clone https://github.com/prajwalch/TorrentSearch.git
cd TorrentSearch
./gradlew assembleDebug
Gotowy APK pojawi się w app/build/outputs/apk/debug/.
Jeśli kompilacja brzmi jak zbyt duży wysiłek, projekt jest oficjalnie dostępny na F-Droid, IzzyOnDroid i stronie wydań GitHub. Wymagany jest Android 7.1 lub nowszy.
Dla kogo to jest
TorrentSearch rozwiązuje jednocześnie dwa problemy. Dla zwykłych użytkowników zapewnia szybkie narzędzie do wyszukiwania torrentów bez natrętnych reklam i spamu.
Dla deweloperów Androida to doskonały przykład nowoczesnej open-source'owej aplikacji Compose. Tutaj możesz zobaczyć, jak zorganizować modułową architekturę, skonfigurować strumieniowe przetwarzanie wielu źródeł sieciowych i elegancko zaimplementować motywy Material You. Zachęcam do zapoznania się z projektem w wolnym czasie lub zainstalowania APK na telefonie.
Powiązane projekty