Skip to content

v2.5.6: Fix Android 14+ Alarm Crash (#85), Dose Undo Confirmation and Per-Dose Notes

Choose a tag to compare

@saad2134 saad2134 released this 23 Sep 17:57
· 87 commits to main since this release

v2.5.6: Fix Android 14+ Alarm Crash (#85), Dose Undo Confirmation and Per-Dose Notes

v2.5.6

⚠️ Note for existing GitHub APK users:
Because Dosezy v2.4.2+ transitions to our official production release signing key (required for Google Play), updating directly over older debug-signed APKs requires a quick backup & reinstall:

  1. In Dosezy, go to Menu → Backup & Restore and tap Export/Create Backup.
  2. Uninstall the older version.
  3. Install the new v2.5.6 APK.
  4. Go to Menu → Backup & Restore and tap Restore Backup to restore all profiles, medicines, and history in 1 tap.

📱 Patient App (Android)

  • Fix Android 14+ (API 34–36) Background Alarm Crash (#85): Resolved IllegalArgumentException: pendingIntentBackgroundActivityStartMode must not be set when creating a PendingIntent in MedicineAlarmReceiver. Switched to setPendingIntentCreatorBackgroundActivityStartMode(MODE_BACKGROUND_ACTIVITY_START_ALLOWED) when building the full-screen PendingIntent, ensuring alarms and notifications fire reliably on modern Android versions.
  • Defensive Exception Safeguards: Hardened background alarm handling in MedicineAlarmReceiver with nested error isolation around fallback audio playback and notification dispatch, preventing unhandled coroutine worker exceptions from killing the application process.
  • Dose Undo Confirmation & Toggle: Added an explicit preference in Settings under Dose Tracking to enable/disable dose undo (default disabled to prevent accidental reversals and inventory distortions). When enabled, reverting a dose from the card or snackbar requires confirmation before changing status and restoring stock.
  • Per-Dose Notes Logging & Master Toggle: Added a master preference to enable or disable Dose Notes entirely (default disabled; hides "+ Add Note" completely when disabled for a minimal, distraction-free home screen). When enabled, patients can tap "+ Add Note" beneath taken doses, or optionally enable automatic note prompting upon logging a dose. Integrated into custom dose time dialogs and added retrospective note editing directly on taken medication cards and calendar history.
  • Automatic Legacy Timezone Reconciliation: Added automatic startup and backup restore reconciliation for schedule entries created under pre-v2.5.2 Room serialization, repairing shifted display times to match intended wall-clock hours and raw scheduled times.
  • Bottom Navigation Bar Light Theme Polish: Removed the elevation drop-shadow beneath the middle '+' action button in light mode for a clean flat aesthetic.
  • Subscreen TopBar Curvature Parity: Standardized AddMedScreen and EditMedScreen to use the shared TopBar component, ensuring bottom-left and bottom-right curved corners and border strokes match the main pages across all subscreens.

🌐 Documentation & Architecture

  • Updated Alarm Architecture Guide: Documented exact API requirements for ActivityOptions.setPendingIntentCreatorBackgroundActivityStartMode on Android 14+ in docs/AlarmSystem.md.

Full Changelog: v2.5.5...v2.5.6