W skrócie
- Aplikacja offline zapisuje dane na urządzeniu i wysyła je na serwer, gdy wróci połączenie.
- Najtrudniejsze są konflikty: co, jeśli dwie osoby zmienią ten sam rekord bez internetu?
- Zdjęcia i podpisy zajmują dużo miejsca - trzeba zaplanować kompresję i kolejność wysyłki.
- Użytkownik musi widzieć, co już się wysłało, a co czeka - inaczej traci zaufanie do aplikacji.
- Dane na urządzeniu trzeba chronić: szyfrowanie, blokada, zdalne czyszczenie przy zgubieniu telefonu.
Jak działa praca offline
Aplikacja przechowuje na urządzeniu dane potrzebne do pracy (zlecenia, listy obiektów, słowniki) i zapisuje lokalnie wszystko, co wprowadzi użytkownik. Gdy pojawi się połączenie, zmiany trafiają na serwer, a z serwera przychodzą nowe dane.
To brzmi prosto, ale oznacza, że część logiki systemu musi działać na telefonie, a nie tylko na serwerze. Dlatego praca offline jest jednym z droższych wymogów i trzeba ją ustalić na początku projektu.
Konflikty danych
Najtrudniejsze pytanie brzmi: co, jeśli dwie osoby zmienią ten sam rekord bez internetu? Możliwe zasady:
- wygrywa późniejsza zmiana - proste, ale można stracić dane,
- rekord ma jednego właściciela - np. zlecenie przypisane do jednego technika,
- konflikt trafia do osoby w biurze, która decyduje, co zostaje,
- dane tylko dopisywane (nowe pomiary, nowe zdjęcia) - konflikty praktycznie znikają.
Najlepiej projektować proces tak, żeby konfliktów było jak najmniej - zwykle przez jasne przypisanie pracy.
Zdjęcia, podpisy i duże pliki
Protokoły z terenu to często zdjęcia i podpisy. Trzeba zaplanować kompresję, limit miejsca na urządzeniu i kolejność wysyłki: najpierw dane tekstowe, potem zdjęcia, które mogą się wysyłać dłużej. Zdjęcie musi być na stałe powiązane z właściwym protokołem.
Co musi widzieć użytkownik
- czy jest online i kiedy ostatnio zsynchronizował dane,
- które dokumenty czekają na wysłanie,
- czy coś się nie udało i co z tym zrobić.
Bez tego pracownik nie wie, czy protokół „poszedł”, dzwoni do biura albo wypełnia dokument drugi raz.
Bezpieczeństwo danych na urządzeniu
Dane zapisane w telefonie mogą wpaść w niepowołane ręce, jeśli urządzenie zginie. Podstawy to szyfrowanie danych w aplikacji, blokada ekranu, wylogowanie po czasie bezczynności i możliwość zdalnego wyczyszczenia danych - najłatwiej, gdy firmowe telefony są zarządzane przez MDM.