Kiedy polecamy Kotlina, a kiedy lepszy będzie Flutter
Aplikacja natywna daje pełny dostęp do Androida, ale oznacza kod tylko dla jednej platformy. Dlatego pytamy najpierw, kto będzie z niej korzystał i na jakim sprzęcie.
Polecamy Kotlina, gdy:
- aplikacja jest dla pracowników z firmowymi telefonami albo terminalami magazynowymi z Androidem,
- musi działać w tle: śledzić trasę, synchronizować dane, odbierać zlecenia przy wygaszonym ekranie,
- łączy się z urządzeniami przez Bluetooth Low Energy, NFC albo USB - czujnikami, drukarkami, zamkami, skanerami,
- ma pracować w trybie kiosku albo pod kontrolą systemu zarządzania urządzeniami w firmie,
- rozwijasz istniejącą aplikację natywną w Kotlinie lub Javie.
Odradzamy Kotlina, gdy:
- aplikacja jest dla klientów i musi być także na iPhone’ach, a budżet nie wystarczy na dwie aplikacje natywne,
- zakres to typowe ekrany biznesowe bez funkcji sprzętowych - Flutter da ten sam efekt taniej na obu platformach,
- wersja na iOS jest pewna w ciągu roku, a nie masz planu na utrzymanie dwóch osobnych kodów.
Natywnie w Kotlinie czy Flutter - porównanie dla Androida
Dla samego Androida koszt obu dróg jest zbliżony. Różnice dotyczą dostępu do systemu i tego, co się stanie, gdy dojdzie iOS.
| Kryterium | Kotlin (natywnie) | Flutter |
|---|---|---|
| Platformy | Android; iOS osobno albo przez Kotlin Multiplatform | Android i iOS z jednego kodu |
| Interfejs | Jetpack Compose, komponenty zgodne z systemem | własny silnik renderujący, wygląd identyczny na obu platformach |
| Praca w tle | pełna kontrola: WorkManager, usługi pierwszoplanowe | możliwa, część trzeba dopisać natywnie |
| Bluetooth, NFC, USB, terminale | pełny dostęp do API Androida i SDK producentów | przez wtyczki; nietypowy sprzęt wymaga kodu natywnego |
| Nowe wersje Androida | wsparcie od dnia premiery | po aktualizacji Fluttera i wtyczek |
| Koszt, gdy potrzebny też iOS | wyższy - dwie osobne aplikacje natywne | niższy - jeden kod na obie platformy |
Różnica pojawia się, gdy dochodzi iOS: w studiach przypadków publikowanych przez Google zespoły Google Classroom i Reflectly raportują, że jeden kod we Flutterze skrócił czas pracy o co najmniej 50% - to wyniki wybranych wdrożeń, a nie średnia rynkowa.
Jeśli wersja na iPhone’a jest prawdopodobna w ciągu roku, liczymy w wycenie oba warianty. Cały przebieg projektu i ceny dla samego Androida opisujemy na stronie aplikacje mobilne na Android.
Jak pracujemy w Kotlinie
Wersje
Nowe aplikacje piszemy w Kotlinie z interfejsem w Jetpack Compose. Kod w Javie utrzymujemy i przenosimy stopniowo, gdy przejmujemy starszy projekt. Minimalną wersję Androida ustalamy na podstawie telefonów Twoich użytkowników, a docelową wersję API podnosimy zgodnie z corocznymi wymaganiami Google Play.
Architektura
Stosujemy architekturę zalecaną przez Google: warstwa interfejsu z ViewModelami, warstwa danych z repozytoriami, lokalna baza Room dla pracy offline i synchronizacja w tle przez WorkManager. Operacje asynchroniczne obsługujemy korutynami.
CI/CD i wydania
Każda zmiana uruchamia budowanie w Gradle, analizę statyczną i testy. Wersje testowe trafiają na ścieżkę testów wewnętrznych Google Play, a publikację produkcyjną robimy etapowo: najpierw dla części użytkowników, potem dla wszystkich. Klucze podpisywania aplikacji zostają na Twoim koncie.
Testy
Logikę testujemy jednostkowo, ekrany testami Compose, a ścieżki krytyczne na fizycznych urządzeniach. Aplikacje dla terminali i urządzeń Bluetooth testujemy na docelowym sprzęcie, bo emulator nie odtworzy skanera ani czytnika NFC.
Natywne aplikacje na Androida z naszego portfolio
Aplikacje napisane natywnie w Kotlinie i Javie, z backendem w Laravelu albo Pythonie.
Nails Room: rozszerzona rzeczywistość i uczenie maszynowe do przymierzania kolorów i zdobień paznokci w czasie rzeczywistym. IT-Renhold: natywne aplikacje na Androida i iOS dla klientów i pracowników firmy sprzątającej w Norwegii. VG Lock: aplikacja do zdalnego otwierania zamków w hotelach i apartamentach.
Dlaczego możesz nam zlecić aplikację natywną na Androida
Od 2010 roku na rynku, ponad 300 zrealizowanych projektów
Natywne aplikacje z AR, uczeniem maszynowym i obsługą zamków elektronicznych
Backend w Laravelu, w którym powstała większość naszych realizacji
Kod, klucze podpisywania i konto w Google Play zostają u Ciebie
Najczęściej zadawane pytania o aplikacje w Kotlinie
Zaktualizowano:


