我正在开发一个应该定期(每 15 或 30 分钟)获取 API 的应用程序。我正在使用 Flutter 进行前端开发。该应用程序应适用于 Android 和 iOS 设备。
后台任务包括对后端的调用。在后端,工作人员正在确定某些数据(这可能需要一分钟)并将其发送回前端。该任务必须(至少部分)由前端启动,因为解密密钥被传递到后端。
我想到了使用 Firebase Cloud Messaging 将请求的数据推送到设备。不幸的是,似乎有必要注册 Apple Development Program 才能使用它。由于该应用程序是一个大学项目,我什至不确定,如果 FCM 方法是最好的方法,我不想为注册支付 99 欧元。
除了 FCM 方法,我还发现了一些像“background_fetch”这样的颤振包,用于提取数据而不是推送数据,这对我来说不是问题。但是我发现的所有软件包都存在问题,它们在 iOS 和 Android 上的工作方式不同,并且在各自操作系统的后台任务管理方面也不是很可靠。
是否有针对此问题的“简单”解决方案,例如允许我在 iOS 和 Android 上安排定期后台任务的颤振包,这在很大程度上是可靠的,因为至少粗略地尊重了时间段并且后台任务不会被杀死,而等待回应?或者我是否必须实施自己的服务器端推送服务以避免 Apple 开发人员计划的成本?
先感谢您!