You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Matthew Raymer 0ccf071f5c feat(performance): implement Phase 3.3 performance optimization for production 7 days ago
..
DailyNotificationBackgroundTaskManager.swift feat(ios): implement Phase 2.1 iOS background tasks with T–lead prefetch 1 week ago
DailyNotificationConfig.swift feat(ios): Enhance battery optimization and notification management 6 months ago
DailyNotificationConstants.swift feat: implement core notification functionality for iOS and Android - Add settings management, proper error handling, and platform-specific implementations 6 months ago
DailyNotificationDatabase.swift feat(ios): implement Phase 2.1 iOS background tasks with T–lead prefetch 1 week ago
DailyNotificationETagManager.swift feat(etag): implement Phase 3.1 ETag support for efficient content fetching 7 days ago
DailyNotificationError.swift feat: implement core notification functionality for iOS and Android - Add settings management, proper error handling, and platform-specific implementations 6 months ago
DailyNotificationErrorHandler.swift feat(etag): implement Phase 3.1 ETag support for efficient content fetching 7 days ago
DailyNotificationLogger.swift feat: implement core notification functionality for iOS and Android - Add settings management, proper error handling, and platform-specific implementations 6 months ago
DailyNotificationMaintenanceWorker.swift feat(ios): Enhance battery optimization and notification management 6 months ago
DailyNotificationPerformanceOptimizer.swift feat(performance): implement Phase 3.3 performance optimization for production 7 days ago
DailyNotificationPlugin.swift feat(ios): implement Phase 2.1 iOS background tasks with T–lead prefetch 1 week ago
DailyNotificationPowerManager.swift feat(ios): Enhance battery optimization and notification management 6 months ago
DailyNotificationRollingWindow.swift feat(ios): implement Phase 2.1 iOS background tasks with T–lead prefetch 1 week ago
DailyNotificationTTLEnforcer.swift feat(ios): implement Phase 2.1 iOS background tasks with T–lead prefetch 1 week ago
NotificationContent.swift feat(ios): implement Phase 2.1 iOS background tasks with T–lead prefetch 1 week ago
README.md docs: add comprehensive notification system documentation 1 week ago
index.ts refactor: improve build configuration and code organization 6 months ago

README.md

iOS Implementation

This directory contains the iOS-specific implementation of the DailyNotification plugin.

Current Implementation Status

IMPLEMENTED:

  • Basic plugin structure (DailyNotificationPlugin.swift)
  • UserDefaults for local data storage
  • Power management (DailyNotificationPowerManager.swift)
  • Battery optimization handling
  • iOS notification categories and actions

NOT IMPLEMENTED (Planned):

  • BGTaskScheduler for background data fetching
  • Background task management
  • Silent push nudge support
  • T–lead prefetch logic

Implementation Details

The iOS implementation currently uses:

  • UNUserNotificationCenter for notification management
  • UserDefaults for local data storage
  • iOS notification categories and actions
  • Power management and battery optimization

Planned additions:

  • BGTaskScheduler for background data fetching
  • Background task management
  • Silent push support

Native Code Location

The native iOS implementation is located in the ios/ directory at the project root.

Key Components

  1. DailyNotificationPlugin.swift: Main plugin class
  2. DailyNotificationPowerManager.swift: Power state management
  3. DailyNotificationConfig.swift: Configuration options
  4. DailyNotificationMaintenanceWorker.swift: Maintenance tasks
  5. DailyNotificationLogger.swift: Logging system

Missing Components (Planned):

  • BackgroundTaskManager.swift: Handles background fetch scheduling
  • NotificationManager.swift: Manages notification creation and display
  • DataStore.swift: Handles local data persistence

Implementation Notes

  • Uses UserDefaults for lightweight data storage
  • Implements proper battery optimization handling
  • Supports iOS notification categories and actions
  • Handles background refresh limitations

Planned Features:

  • BGTaskScheduler for reliable background execution
  • Silent push notification support
  • Background task budget management

Testing

Run iOS-specific tests with:

npm run test:ios