Repository navigation
π¦ Release v3.0.8
π Localization
- β¨ Added missing localizations across the app.
π Features & Improvements
β API v1 Integration & Settings Request System Overhaul
- Migrated
BugReportApito 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
SensitivitiesRequestDialogfor better UX and error feedback - Implemented automatic retry logic
- Removed unused endpoints (
health,mappings) - Category mapping updated: removed
visual_error, addedfeature_request - Added Russian localization for
feature_request
π¦ Dependency Upgrades & libs.versions.toml Refactor
-
Upgraded:
- Hilt β
2.55 - UnityAds & UnityMediationAds β
4.15.0 - Adopted BOM for Ktor (
2.3.4) - Multiple AndroidX and Google Play libraries updated
- Hilt β
-
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()inSensitivitiesRequest.kt -
Cleaned up obsolete Kotlin session files
π§± UI Component Reuse in About Screen
- Moved
AppInfoCard,VersionInfoCard,InfoCard, andIconCardtoui-components - Refactored
AboutScreenfor modularity and reuse
π― Ad Banners Centralization & Fixes
- Centralized banner ads in
MainAppScaffold - Introduced
AdBannerContainerwith readiness check - Fixed overlapping issues with navigation
- Removed redundant code for bottom padding calculations
π§ New Onboarding System
- Introduced
OnboardingManagerfor centralized onboarding logic - Added DSL-style onboarding steps and conditions
- Improved UI/UX with
OnboardingBottomBarImproved - Migrated app content to use new onboarding structure
- Updated
AdRepositorylogging and fixed cleanup issues
π§ Architectural Overhaul & Performance Improvements
βοΈ Major Ad System Refactor
- Introduced centralized
AdRepositoryusing 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
ConsentManagerwith reactive state handling - Added frequency control for ad displays
- BREAKING: Removed outdated AdMob managers and ViewModels
π§Ό General Optimizations & UX Enhancements
- Optimized
LazyVerticalGridwithcontentTypeand stable keys - Added error and no-internet UI states with retry actions
- Introduced reusable
ErrorStateComponent - Cached
Shimmerbrushes for performance - Modularized
MyApplicationlogic - Created
LazyListUtilsfor scroll list optimizations - Updated Kotlin to
2.1.10, KSP to2.1.10-1.0.29 - Replaced deprecated Compose components
π§Ή Architecture Cleanup & Ad Fixes
- 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, andDatabaseModule - Added centralized
ErrorHandlerwith Firebase Crashlytics - Prevented memory leaks in
AdRepository
Full Changelog: v3.0.2...v3.0.8