Skip to content

FF Sensitivities v3.0.8

Latest

Choose a tag to compare

@ByteFlipper-58 ByteFlipper-58 released this 11 Jun 08:29
· 17 commits to master since this release

πŸ“¦ Release v3.0.8

πŸ”„ Localization

  • ✨ Added missing localizations across the app.

πŸš€ Features & Improvements

βœ… API v1 Integration & Settings Request System Overhaul

[Commit 4857b3f](4857b3f)

  • Migrated BugReportApi to use the new v1 endpoints (/api/v1/forward, /api/v1/feedback)
  • Replaced direct Telegram API calls with centralized bug report service
  • Added fallback routing (settings_request β†’ other) in case of failure
  • Improved error handling and added detailed logging
  • Added request validation (message length, tag checks)
  • Redesigned SensitivitiesRequestDialog for better UX and error feedback
  • Implemented automatic retry logic
  • Removed unused endpoints (health, mappings)
  • Category mapping updated: removed visual_error, added feature_request
  • Added Russian localization for feature_request

πŸ“¦ Dependency Upgrades & libs.versions.toml Refactor

[Commit a1b13f8](a1b13f8)

  • Upgraded:

    • Hilt β†’ 2.55
    • UnityAds & UnityMediationAds β†’ 4.15.0
    • Adopted BOM for Ktor (2.3.4)
    • Multiple AndroidX and Google Play libraries updated
  • Refactored libs.versions.toml:

    • Grouped dependencies by domain
    • Used BOM for Firebase, Ktor, Compose
    • Standardized alias naming
    • Removed unused dependencies (e.g. coilCompose)
  • Gradle files refactored to use version catalogs

  • Fixed: response.code β†’ response.code() in SensitivitiesRequest.kt

  • Cleaned up obsolete Kotlin session files

🧱 UI Component Reuse in About Screen

[Commit 6c05014](6c05014)

  • Moved AppInfoCard, VersionInfoCard, InfoCard, and IconCard to ui-components
  • Refactored AboutScreen for modularity and reuse

🎯 Ad Banners Centralization & Fixes

[Commit ed70fac](ed70fac)

  • Centralized banner ads in MainAppScaffold
  • Introduced AdBannerContainer with readiness check
  • Fixed overlapping issues with navigation
  • Removed redundant code for bottom padding calculations

🧭 New Onboarding System

[Commit 1486802](1486802)

  • Introduced OnboardingManager for centralized onboarding logic
  • Added DSL-style onboarding steps and conditions
  • Improved UI/UX with OnboardingBottomBarImproved
  • Migrated app content to use new onboarding structure
  • Updated AdRepository logging and fixed cleanup issues

🧠 Architectural Overhaul & Performance Improvements

βš™οΈ Major Ad System Refactor

[Commit 9eeb7cf](9eeb7cf)

  • Introduced centralized AdRepository using Repository pattern
  • Replaced multiple ViewModels with UnifiedAdViewModel
  • Standardized ad state management via AdState
  • Implemented Strategy pattern for ad providers (Banner, Interstitial, Rewarded, AppOpen)
  • Enabled preloading and caching for all ads
  • Integrated ads with Jetpack Compose components
  • Updated ConsentManager with reactive state handling
  • Added frequency control for ad displays
  • BREAKING: Removed outdated AdMob managers and ViewModels

🧼 General Optimizations & UX Enhancements

[Commit 536887f](536887f)

  • Optimized LazyVerticalGrid with contentType and stable keys
  • Added error and no-internet UI states with retry actions
  • Introduced reusable ErrorStateComponent
  • Cached Shimmer brushes for performance
  • Modularized MyApplication logic
  • Created LazyListUtils for scroll list optimizations
  • Updated Kotlin to 2.1.10, KSP to 2.1.10-1.0.29
  • Replaced deprecated Compose components

🧹 Architecture Cleanup & Ad Fixes

[Commit 5b6ef52](5b6ef52)

  • Fixed interstitial ad display issue
  • Moved ad counters to persistent DataStore
  • Added debounce for App Open Ads (30s cooldown)
  • Cleaned up faulty onCleared() ad logic
  • Split DI modules into AdModule, NetworkModule, and DatabaseModule
  • Added centralized ErrorHandler with Firebase Crashlytics
  • Prevented memory leaks in AdRepository

Full Changelog: v3.0.2...v3.0.8