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.
|
|
7 months ago | |
|---|---|---|
| .. | ||
| DailyNotificationConfig.swift | 7 months ago | |
| DailyNotificationConstants.swift | 7 months ago | |
| DailyNotificationError.swift | 7 months ago | |
| DailyNotificationLogger.swift | 7 months ago | |
| DailyNotificationMaintenanceWorker.swift | 7 months ago | |
| DailyNotificationPlugin.swift | 7 months ago | |
| DailyNotificationPowerManager.swift | 7 months ago | |
| README.md | 7 months ago | |
| index.ts | 7 months ago | |
README.md
iOS Implementation
This directory contains the iOS-specific implementation of the DailyNotification plugin.
Implementation Details
The iOS implementation uses:
BGTaskSchedulerfor background data fetchingUNUserNotificationCenterfor notification managementUserDefaultsfor local data storage- iOS notification categories and actions
Native Code Location
The native iOS implementation is located in the ios/ directory at the project root.
Key Components
DailyNotificationIOS.swift: Main plugin classBackgroundTaskManager.swift: Handles background fetch schedulingNotificationManager.swift: Manages notification creation and displayDataStore.swift: Handles local data persistence
Implementation Notes
- Uses BGTaskScheduler for reliable background execution
- Implements proper battery optimization handling
- Supports iOS notification categories and actions
- Handles background refresh limitations
- Uses UserDefaults for lightweight data storage
Testing
Run iOS-specific tests with:
npm run test:ios