Repository navigation
FF Sensitivities v3.0.0
The new FF Sensitivities v3.0.0 is here!
π What's New?
βοΈ Dependency Injection & Architecture
β’ Integrated Dagger Hilt for dependency injection.
β’ Introduced AppModule to provide DataStoreManager and HttpClient.
β’ AppViewModel and DeviceViewModel now use constructor injection.
β’ Removed AppViewModelFactory and AppUpdateHandler.
π¦ Modularization
β’ Moved settings components (PreferenceCategory, RadioButtonPreference, etc.) into a separate ui-components module.
β’ Improved architecture with AdManagerHolder, BaseAdManager, and AdConstants for better ad management.
π App Updates
β’ Updated app update check mechanism using AppUpdateManagerWrapper and StateFlow.
β’ Removed deprecated update-related classes (AppUpdateHandler).
β’ Added update resumption logic in AppViewModel.
π§ Navigation & UI
β’ Added back navigation support to all major screens.
β’ Unified Scaffold style across all screens (HomeScreen, DevicesScreen, SettingsScreen, etc.).
β’ Refactored NavigationHost: removed onTitleChange, topBar, and added animated transitions (slideIntoContainer, slideOutOfContainer).
β’ Enabled vertical scroll in SensitivitiesScreen.
π§βπ« Onboarding Flow
β’ Added a 3-step onboarding section: Info, Permissions, Welcome.
β’ Implemented animated navigation with OnboardingBottomBar.
β’ Included transitions with slideInHorizontally, fadeIn, crossfade, and spring animations for indicators.
π± Ads Integration
β’ Completely reworked integration with Yandex Ads:
β’ Introduced BaseAdManager and AdManagerHolder.
β’ Interstitial ads now show after a set number of visits.
β’ Updated DevicesScreen and SensitivitiesScreen for ad handling.
π§ͺ Crash Handling
β’ Added global crash handler:
β’ Logs errors via Firebase Crashlytics and Timber.
β’ Displays ErrorActivity with options to copy the error and restart the app.
π§βπ§ Preferences & Language
β’ Added PreferencesManager using DataStore.
β’ Implemented language selection in SettingsScreen using FlowRow and FilterChip.
β’ Removed language management from DataStore β now using the system locale instead.
π¨ Theming
β’ Updated FFSensitivitiesTheme:
β’ Passes theme settings directly.
β’ Removed deprecated preview parameters.
β’ Theme control now handled through AppViewModel.
βββ
The update is already available on RuStore and Google Play!