asyncredux-persistence
Zapisuj stan aplikacji na dysku i przywracaj go między sesjami za pomocą AsyncRedux
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill do AsyncRedux umożliwia trwałe przechowywanie stanu aplikacji na dysku. Nauczy Cię, jak zaimplementować własną klasę Persistor, obsługiwać odczyt i zapis stanu, porównywać zmiany, ograniczać częstotliwość zapisu oraz synchronizować persistence z cyklem życia aplikacji. Idealny dla deweloperów Flutter, którzy chcą, aby dane użytkownika przetrwały restart aplikacji.
Jak używać
Utwórz klasę dziedziczącą po abstrakcyjnej klasie Persistor
i zaimplementuj wymagane metody: readState() do odczytania zapisanego stanu z dysku, persistDifference() do zapisu zmian (porównując lastPersistedState z newState), oraz deleteState() do usunięcia stanu. W metodzie readState() zwróć zapisany stan lub null, jeśli nie istnieje. W persistDifference() zapisz tylko różnice między stanem poprzednim a nowym, aby zoptymalizować operacje dyskowe.
Podczas inicjalizacji Store'a odczytaj istniejący stan za pomocą persistor.readState(). Jeśli zwróci null, utwórz domyślny stan i zapisz go metodą persistor.saveInitialState().
Przekaż instancję persistora do konstruktora Store
, ustawiając parametr persistor. Store automatycznie będzie wywoływać persistDifference() po każdej zmianie stanu. Skonfiguruj throttle w swoim Persistorze, zwracając Duration (np. Duration(seconds: 2)), aby ograniczyć częstotliwość zapisów na dysk. Zwróć null, aby wyłączyć throttling.
Wznów i wstrzymaj persistence w odpowiednich punktach cyklu życia aplikacji, np. onPause() i onResume(), aby uniknąć zbędnych operacji dyskowych w tle.