>_ DevTrendspl

Język

Strona główna

Języki

Sekcje

Frontend Backend Mobilne DevOps AI / ML GameDev Blockchain Systemy wbudowane Bezpieczeństwo
Kotlin

Po co szukać firmware'u Samsunga w całym internecie, skoro jest Bifrost

Użytkownicy smartfonów Samsung doskonale znają ten ból: gdy trzeba wgrać oprogramowanie na urządzenie, trzeba sięgać po podejrzane fora lub płatne strony agregujące firmware. Tam czekają na Ciebie limity prędkości, niekończące się captche i masa reklam. Sam wielokrotnie wpadałem w te pułapki, próbując ożywić stary tablet lub zaktualizować telefon, który przestał otrzymywać aktualizacje OTA.

Na GitHubie jest projekt o nazwie Bifrost. To narzędzie do pobierania oficjalnego firmware'u Samsunga, które działa bezpośrednio z serwerami firmy. Najlepsze w tym wszystkim — jest całkowicie darmowe, open-source'owe i, co rzadkie dla tego typu narzędzi, wygląda naprawdę przyzwoicie.

Co to potrafi

Bifrost to nie tylko skrypt w Pythonie opakowany w interfejs graficzny. Autor przepisał popularnego Samloadera w Kotlinie z użyciem Compose Multiplatform. Efektem jest aplikacja działająca wszędzie: od Windows i macOS po Androida.

Główne funkcje, które przykuły moją uwagę:

  1. Wieloplatformowość bez obejść. Możesz pobierać firmware na swoim PC lub bezpośrednio na telefonie, który zamierzasz flashować. Obsługiwane są nawet wersje ARM systemów Windows i Linux.
  2. Pobieranie bez IMEI. Wcześniej sprawdzanie aktualizacji często wymagało numeru seryjnego lub IMEI. Tutaj używana jest metoda, która omija to ograniczenie. Wystarczy znać model (np. SM-S918B) i region (CSC).
  3. Wbudowany dekoder. Firmware Samsunga jest szyfrowany (zazwyczaj pliki .enc4). Bifrost pobiera i odszyfrowuje je w locie do gotowej do wgrania paczki. Nie trzeba szukać dodatkowych narzędzi.
  4. Wyszukiwanie po regionie. Program ma wygodny selektor CSC. Jeśli nie znasz kodu swojego kraju, możesz go po prostu znaleźć na liście.

Jak to działa pod maską

Projekt jest interesujący pod względem technicznym. Autor, zacharee, wybrał nowoczesny stack: Jetpack Compose na Androida i JetBrains Compose na desktopy. Pozwala to używać tego samego kodu do UI na różnych systemach operacyjnych.

Ciekawe szczegóły: aplikacja wykorzystuje Bugsnag do raportowania błędów i Weblate do tłumaczeń. Jeśli rosyjski interfejs wydaje Ci się niedokładny, możesz go łatwo poprawić w projekcie społecznościowym.

Aha, i jeśli Twój antywirus nagle uzna, że Bifrost to trojan, nie panikuj. Istnieje stary malware o tej samej nazwie i niektóre silniki heurystyczne reagują na samą nazwę pliku. Kod źródłowy jest otwarty, więc możesz zweryfikować wszystko samodzielnie lub zbudować aplikację przez Gradle, jeśli chcesz.

Jak używać w praktyce

Scenariusz: chcesz przywrócić poprzednią wersję Androida lub po prostu pobrać czysty obraz bez bloatware'u operatora.

  1. Uruchom Bifrost.
  2. Wpisz model urządzenia. Możesz go znaleźć w ustawieniach telefonu („O telefonie" -> „Informacje o oprogramowaniu").
  3. Określ region. Jeśli nie znasz swojego, w programie jest przycisk z listą.
  4. Kliknij „Sprawdź aktualizacje".
  5. Jeśli firmware zostanie znaleziony, kliknij „Pobierz".
Desktop download interface

Program pobierze paczkę, zweryfikuje jej integralność i odszyfruje. Prędkość jest zwykle ograniczona przez serwery Samsunga — czasami serwują pliki z prędkością do 100 Mbps, a czasami throttlują do 3-5 MB/s. To kwestia szczęścia.

Zdarzyło się, że na Windows program otwierał się z białym ekranem. Okazało się, że to bug renderowania Skia na niektórych kartach graficznych. Rozwiązanie jest proste — uruchom jako administrator lub przełącz się na zintegrowaną grafikę.

Dla kogo to jest

Przede wszystkim — dla osób często grzebiących przy urządzeniach Samsung. Entuzjastów, którzy lubią zmieniać regiony, aby włączyć nagrywanie rozmów czy Samsung Pay, a także techników serwisowych.

Bifrost wygrywa swoją prostotą. Nie musisz instalować Pythona, rozgryzać argumentów linii poleceń ani płacić za subskrypcje na stronach z firmwarem. To po prostu poręczne, działające narzędzie, które robi jedną rzecz, ale robi ją dobrze.

Jeśli planujesz używać go na Androidzie, po prostu pobierz APK z release'ów na GitHubie. Na iOS jest wersja w TestFlight, choć trochę bardziej skomplikowana ze względu na ograniczenia systemowe.

Bifrost on Android

Czy warto wypróbować

Jeśli masz Samsunga — zdecydowanie tak. Nawet jeśli nie potrzebujesz firmware'u teraz, warto mieć to narzędzie w zakładkach. Projekt jest aktywny, regularnie aktualizowany i ma za sobą solidną społeczność. Jedynym ograniczeniem: zegarki Samsung (Galaxy Watch) nie są obsługiwane, ponieważ firma nie udostępnia publicznie pełnych plików firmware dla nich. Dla wszystkiego innego — smartfonów i tabletów — to prawdopodobnie najrozsądniejsze rozwiązanie dostępne w tej chwili.

Powiązane projekty