Pliki cookies

Pliki cookies niezbędne zapewniają działanie strony. Analityczne i reklamowe (statystyki odwiedzin, pomiar skuteczności reklam) włączamy tylko za Państwa zgodą, którą można w każdej chwili zmienić lub wycofać w „Ustawieniach cookies” w stopce strony. Więcej: polityka cookies, polityka prywatności.

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.

Natywnie w Kotlinie czy Flutter - porównanie dla Androida
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

Prosta aplikacja albo jedna funkcja kosztuje zwykle od 15 000 zł netto, aplikacja standardowa z kontami użytkowników, backendem i panelem administracyjnym od 30 000 zł, a system zintegrowany z ERP i urządzeniami od 70 000 zł. Dla samego Androida koszt Kotlina i Fluttera jest zbliżony; różnica pojawia się, gdy potrzebna jest też wersja na iOS.

Nowe aplikacje piszemy w Kotlinie, bo to język rekomendowany przez Google dla Androida: krótszy kod, bezpieczna obsługa wartości pustych i korutyny do pracy asynchronicznej. Javę znamy i utrzymujemy w starszych aplikacjach. Przy przejęciu projektu nie przepisujemy wszystkiego od razu - nowe moduły powstają w Kotlinie, a stary kod przenosimy stopniowo.

Tak, jeśli zaprojektujemy to od początku. Dane zapisujemy w lokalnej bazie na telefonie, a zmiany wysyłamy na serwer, gdy wróci zasięg - także w tle, bez udziału użytkownika. Ustalamy z Tobą reguły konfliktów, na przykład co zrobić, gdy dwie osoby zmienią ten sam rekord bez internetu. Tryb offline zwiększa zakres prac, więc wyceniamy go osobno.

Tak. W Kotlinie mamy pełny dostęp do Bluetooth Low Energy, NFC, USB i aparatu, a terminale magazynowe z Androidem obsługujemy przez SDK producenta. Przed wyceną prosimy o model urządzenia i jego dokumentację, a przy nietypowym sprzęcie o egzemplarz testowy. Bez fizycznego urządzenia nie da się rzetelnie przetestować integracji.

Tak. Przygotowujemy materiały do sklepu, politykę prywatności i deklarację bezpieczeństwa danych, a potem przechodzimy przez weryfikację Google. Aplikacja trafia na Twoje konto dewelopera, więc pozostaje Twoją własnością. Aplikacje wewnętrzne dla pracowników możemy udostępnić tylko w Twojej organizacji, przez zarządzany sklep Google Play, bez publikacji dla wszystkich.

Masz dwie drogi. Możemy napisać osobną aplikację w Swifcie, co daje pełną natywność, ale oznacza drugi kod do utrzymania. Możemy też przenieść logikę biznesową do Kotlin Multiplatform i współdzielić ją między platformami, pisząc natywnie tylko interfejs. Jeśli iOS jest prawdopodobny w ciągu roku, rozważ Fluttera od początku - policzymy wszystkie warianty.

Prosta aplikacja powstaje w 3–5 tygodni, aplikacja z backendem i panelem administracyjnym w 1,5–2,5 miesiąca, a system z integracjami z ERP i urządzeniami 2,5–4,5 miesiąca. Pracujemy w dwutygodniowych etapach, po których dostajesz działającą wersję na telefon testowy. Harmonogram z konkretnymi datami jest częścią wyceny.

Zaktualizowano:

Napisz Zadzwoń