Meshtastic-Android/core/prefs
James Rich 875cf1cff2
refactor: migrate from Hilt to Koin and expand KMP common modules (#4746)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-10 01:19:46 +00:00
..
src refactor: migrate from Hilt to Koin and expand KMP common modules (#4746) 2026-03-10 01:19:46 +00:00
build.gradle.kts refactor: migrate from Hilt to Koin and expand KMP common modules (#4746) 2026-03-10 01:19:46 +00:00
README.md chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4737) 2026-03-06 16:39:05 -06:00

:core:prefs

Overview

The :core:prefs module provides a type-safe wrapper around SharedPreferences for managing application and radio configuration preferences.

Key Components

1. PrefDelegate.kt

Uses Kotlin property delegates to simplify reading and writing preferences.

2. Specialized Prefs

  • RadioPrefs: Manages radio-specific settings (e.g., the last connected device address).
  • UiPrefs: Manages UI preferences (e.g., theme selection, unit systems).
  • MapPrefs: Manages mapping preferences (e.g., preferred map provider).

Module dependency graph

graph TB
  :core:prefs[prefs]:::kmp-library

classDef android-application fill:#CAFFBF,stroke:#000,stroke-width:2px,color:#000;
classDef android-application-compose fill:#CAFFBF,stroke:#000,stroke-width:2px,color:#000;
classDef android-feature fill:#FFD6A5,stroke:#000,stroke-width:2px,color:#000;
classDef android-library fill:#9BF6FF,stroke:#000,stroke-width:2px,color:#000;
classDef android-library-compose fill:#9BF6FF,stroke:#000,stroke-width:2px,color:#000;
classDef android-test fill:#A0C4FF,stroke:#000,stroke-width:2px,color:#000;
classDef jvm-library fill:#BDB2FF,stroke:#000,stroke-width:2px,color:#000;
classDef kmp-library fill:#FFC1CC,stroke:#000,stroke-width:2px,color:#000;
classDef unknown fill:#FFADAD,stroke:#000,stroke-width:2px,color:#000;