Skip to content

ZZNotificationManager is a tool to help you with local notifications and presenting a configurable settings

Notifications You must be signed in to change notification settings

zzmasoud/ZZNotificationManager

Repository files navigation

ZZNotificationManager

Diagram - click to zoom


Goals for the core module (ZZNotificationManager)

  • Wrapping UNNotificationCenter main functionality
  • Grant premissions of local notifications
  • Send / remove local notifications

Golas for the app specific module (CLOCNotificationManager)

  • Using iOS local notifications without importing UNNotificationCenter
  • Add a policy to prevent sending notifications in forbidden hours
  • Send / remove local notifications base on timer states
  • Send / remove local notifications base on project states
  • Send instant local notificaion (e.g. for the killer mode in the app)

UX Goals for the notifications UI experience

  • Show an error view if premission is not granted
  • Load settings when view is presented and premission is granted
    • Sectioned rows with header title
    • Toggling the switch in any row changes its time button isEnabled property
    • Toggling the switch in any row triggers a specified delegate function
    • Tapping the change time button in any row triggers a specified delegate function
    • Show the selected time in the button by a configurable time formatter
  • Changing the time from an external logic will refresh the row and its properties

About

ZZNotificationManager is a tool to help you with local notifications and presenting a configurable settings

Resources

Stars

Watchers

Forks

Languages