我刚刚开始阅读有关向我的应用添加服务的信息,自7/8以来,现在有服务限制来提高手机性能。
我已经看到推荐的方法是使用作业调度程序,但如果我这样做,那不仅会定期启动一个新的监听器吗?
基本上我更新了我的数据库,并且使用快照监听器我想实时更新我的用户。应用关闭后,我想发送通知。
我的问题(如果我是正确的)是不断提出新的Firestore请求将通过我的请求津贴吃掉。
另外,如果它的作业调度程序不是很实时吗?
我已经读过您可以使用前台服务,但这看起来并不像需要永久通知的任务,会让用户烦恼。
任何人都有关于我如何实现这一点的任何提示?
谢谢
答案 0 :(得分:0)
关闭Android应用程序后使用监听器
您可以在Android应用程序关闭后使用侦听器,而不是删除它。使用听众后,您还需要根据活动的生命周期 remove it 。但这只会在一段时间内起作用,因为如果应用程序不在前台,Android将停止您的服务。这样做是为了在不使用应用程序时节省资源。它还可能阻止您的应用程序进行任何联网,甚至完全终止应用程序进程。除了将其作为前台服务之外,您无法阻止这一点,正如您已经提到的那样。
前台服务可能不是为您的案例做的最好的事情,对您的用户来说也不是最好的事情。详细了解limitations on background services。
我的建议是使用Firebase Cloud Messaging在可能感兴趣的内容发生变化时通知您的应用。因此,即使用户关闭应用,您的用户也会收到通知。