Skip to content

Develop - Freeze fix, Optimized debug build, Drozen app export and more#242

Merged
sameerasw merged 9 commits intomainfrom
develop
Feb 27, 2026
Merged

Develop - Freeze fix, Optimized debug build, Drozen app export and more#242
sameerasw merged 9 commits intomainfrom
develop

Conversation

@sameerasw
Copy link
Owner

This pull request refactors the way JSON deserialization is handled throughout the codebase, replacing usages of TypeToken with array-based deserialization for improved type safety and simplicity. It also includes several minor updates and improvements, such as a version bump, new ProGuard rules, and a debug label for the Essentials tab.

Serialization/Deserialization Refactoring:

  • Replaced TypeToken-based deserialization with array-based deserialization (Array<T>::class.java) and conversion to lists or sets in SettingsRepository, GitHubRepository, UpdateRepository, BatteryNotificationService, and NotificationListener. This change improves type safety and reduces boilerplate code. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]

  • Removed unnecessary imports of TypeToken in multiple files after the refactor. [1] [2] [3]

Build and Configuration Updates:

  • Bumped versionCode to 30 and versionName to "11.6" in build.gradle.kts.
  • Added a ProGuard rule to keep classes in the com.sameerasw.essentials.domain.diy package.

Feature and Usability Improvements:

  • Updated the Essentials tab subtitle to display a debug label when in debug builds.
  • Added a public reloadAutomations method in DIYRepository to allow reloading automations at runtime.

Code and Logic Cleanups:

  • Simplified logic in SettingsRepository for handling preference keys and config import, replacing TypeToken with direct casting from Map::class.java. [1] [2]
  • Cleaned up key filtering logic in the config export method.

These changes collectively modernize and simplify the codebase, reduce potential runtime errors from type erasure, and make future maintenance easier.

@sameerasw sameerasw self-assigned this Feb 27, 2026
@sameerasw sameerasw merged commit bca2994 into main Feb 27, 2026
1 check passed
@github-project-automation github-project-automation bot moved this from Backlog to Done in Essentials Progress Feb 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant