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
18106e5ba8
feat(android): consolidate databases and add prefetch scheduling
Consolidate Java and Kotlin database implementations into unified
schema, add delayed prefetch scheduling, and fix notification
delivery issues.
Database Consolidation:
- Merge Java DailyNotificationDatabase into Kotlin DatabaseSchema
- Add migration path from v1 to v2 unified schema
- Include all entities: ContentCache, Schedule, Callback, History,
NotificationContentEntity, NotificationDeliveryEntity,
NotificationConfigEntity
- Add @JvmStatic getInstance() for Java interoperability
- Update DailyNotificationWorker and DailyNotificationStorageRoom
to use unified database
Prefetch Functionality:
- Add scheduleDelayedFetch() to FetchWorker for 5-minute prefetch
before notifications
- Support delayed WorkManager scheduling with initialDelay
- Update scheduleDailyNotification() to optionally schedule prefetch
when URL is provided
Notification Delivery Fixes:
- Register NotifyReceiver in AndroidManifest.xml (was missing,
causing notifications not to fire)
- Add safe database initialization with lazy getDatabase() helper
- Prevent PluginLoadException on database init failure
Build Configuration:
- Add kotlin-android and kotlin-kapt plugins
- Configure Room annotation processor (kapt) for Kotlin
- Add Room KTX dependency for coroutines support
- Fix Gradle settings with pluginManagement blocks
Plugin Methods Added:
- checkPermissionStatus() - detailed permission status
- requestNotificationPermissions() - request POST_NOTIFICATIONS
- scheduleDailyNotification() - schedule with AlarmManager
- configureNativeFetcher() - configure native content fetcher
- Various status and configuration methods
Code Cleanup:
- Remove duplicate BootReceiver.java (keep Kotlin version)
- Remove duplicate DailyNotificationPlugin.java (keep Kotlin version)
- Remove old Java database implementation
- Add native fetcher SPI registry (@JvmStatic methods)
The unified database ensures schedule persistence across reboots
and provides a single source of truth for all plugin data.
Prefetch scheduling enables content caching before notifications
fire, improving offline-first reliability.
|
7 hours ago |
| .. |
|
CROSS_PLATFORM_STORAGE_PATTERN.md
|
fix(android): resolve SharedPreferences mismatch and document cross-platform storage pattern
|
6 days ago |
|
DATABASE_INTERFACES.md
|
feat(android): consolidate databases and add prefetch scheduling
|
7 hours ago |
|
DATABASE_INTERFACES_IMPLEMENTATION.md
|
feat(android): consolidate databases and add prefetch scheduling
|
7 hours ago |
|
INTEGRATION_REFACTOR_CONTEXT.md
|
docs(refactor): add integration point refactor context mapping
|
1 week ago |
|
INTEGRATION_REFACTOR_QUICK_START.md
|
docs(refactor): add integration point refactor analysis and implementation plan
|
1 week ago |
|
NATIVE_FETCHER_CONFIGURATION.md
|
feat(fetcher): add configureNativeFetcher cross-platform API
|
1 week ago |
|
aar-integration-troubleshooting.md
|
docs: add comprehensive AAR integration troubleshooting guide
|
2 weeks ago |
|
accessibility-localization.md
|
docs: complete Phase 8 documentation and examples
|
4 weeks ago |
|
android-app-analysis.md
|
docs: apply surgical edits to harden edge-cases and clarify behavior
|
2 weeks ago |
|
android-app-improvement-plan.md
|
feat(android): add fetch scheduling debug logs and triggerImmediateFetch API
|
1 week ago |
|
app-startup-recovery-solution.md
|
docs: add comprehensive testing and recovery documentation
|
3 weeks ago |
|
boot-receiver-testing-guide.md
|
docs: add comprehensive testing and recovery documentation
|
3 weeks ago |
|
capacitor-platform-service-clean-changes.md
|
docs: add clean CapacitorPlatformService integration without isCapacitor flags
|
4 weeks ago |
|
chatgpt-analysis-guide.md
|
docs: add comprehensive Android app analysis and improvement plan
|
2 weeks ago |
|
comprehensive-testing-guide-v2.md
|
docs: add comprehensive testing infrastructure for P0 features
|
3 weeks ago |
|
deployment-guide.md
|
docs: add comprehensive deployment guide and checklist
|
4 weeks ago |
|
file-organization-summary.md
|
docs: add file organization summary after cleanup
|
4 weeks ago |
|
getting-valid-plan-ids.md
|
docs(testing): add PlanAction JWT hydration implementation guide
|
1 week ago |
|
host-request-configuration.md
|
docs: add comprehensive host request configuration guides
|
4 weeks ago |
|
hydrate-plan-implementation-guide.md
|
docs(testing): add PlanAction JWT hydration implementation guide
|
1 week ago |
|
integration-point-refactor-analysis.md
|
docs(refactor): add integration point refactor analysis and implementation plan
|
1 week ago |
|
legal-store-compliance.md
|
docs: complete Phase 8 documentation and examples
|
4 weeks ago |
|
localhost-testing-guide.md
|
docs(testing): add PlanAction JWT hydration implementation guide
|
1 week ago |
|
manual_smoke_test.md
|
docs: complete Phase 8 documentation and examples
|
4 weeks ago |
|
notification-testing-procedures.md
|
refactor(plugin): remove echo test method and references
|
3 weeks ago |
|
observability-dashboards.md
|
docs: complete Phase 8 documentation and examples
|
4 weeks ago |
|
prefetch-scheduling-diagnosis.md
|
fix(android): resolve prefetch scheduling and permission callback issues
|
1 week ago |
|
prefetch-scheduling-trace.md
|
feat(android): add diagnostic logging for prefetch scheduling
|
1 week ago |
|
reboot-testing-procedure.md
|
docs: add comprehensive testing and recovery documentation
|
3 weeks ago |
|
reboot-testing-steps.md
|
docs: add comprehensive testing and recovery documentation
|
3 weeks ago |
|
standalone-emulator-guide.md
|
docs: add comprehensive standalone emulator guide
|
3 weeks ago |
|
testing-quick-reference-v2.md
|
docs: add comprehensive testing infrastructure for P0 features
|
3 weeks ago |
|
testing-quick-reference.md
|
refactor(plugin): remove echo test method and references
|
3 weeks ago |
|
user-zero-stars-implementation.md
|
feat(test-app): implement User Zero stars querying with 5-minute fetch timing
|
2 weeks ago |