I am working on a flutter app which is kind of reminder app. Showing notification is a core feature in it. There are different ways to schedule notifications, like daily, selected days in a week, monthly, or yearly. I am using flutter_local_notifications package to show notifications and its schedule api is not enough to schedule notifications as per my requirement.
I am using Isar as local database and Firestore as cloud database. Since its easy to query in local database, my preference is to generate notification from local in the app. For this I am planning to run a process daily in midnight at 12am, which will schedule all notifications for that day by querying local Isar database.
I have tried using work_manager and background_fetch packages, but none of them are reliably getting called in background especially if user kill the app. I have gone through the documentation and many questions in stackoverflow to fix any issue in my implementation, but in debug it works, but its not working after making release build in my phone.
So my question is, packages like background_fetch or work_manager reliable enough to for this usecase of scheduling notifications daily, or should I switch to Firebase Cloud messaging? I am going to publish my app on Android and Ios.