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.
|
23 hours ago | |
---|---|---|
.. | ||
DailyNotificationConfig.swift | 23 hours ago | |
DailyNotificationConstants.swift | 2 days ago | |
DailyNotificationError.swift | 2 days ago | |
DailyNotificationLogger.swift | 2 days ago | |
DailyNotificationMaintenanceWorker.swift | 23 hours ago | |
DailyNotificationPlugin.swift | 23 hours ago | |
DailyNotificationPowerManager.swift | 23 hours ago | |
README.md | 4 days ago | |
index.ts | 4 days ago |
README.md
iOS Implementation
This directory contains the iOS-specific implementation of the DailyNotification plugin.
Implementation Details
The iOS implementation uses:
BGTaskScheduler
for background data fetchingUNUserNotificationCenter
for notification managementUserDefaults
for 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