我需要在后台实现fileObserver,因此,如果新文件到达观察到的目录,则必须触发通知。考虑到Oreo实现的后台限制,最简单的选择就是在前台服务中启动fileObserver(带有通知)并继续监听。但是,这会将我的应用程序保留在电池消耗列表中,我希望避免一直添加通知。 另一个解决方案是在workmanager中实现调度程序,但这需要我非常频繁地(每分钟甚至更少的时间)读取整个目录,以识别是否有新文件到达。这意味着我将避免使用fileObserver,但会每分钟不必要地消耗宝贵的资源。
我希望有人可以建议是否还有其他更有效的方法来实现fileObserver的功能,以保证该功能但至少将资源使用保持在最低水平。
答案 0 :(得分:0)
您可以将WorkManager或JobScheduler与内容URI触发器一起使用。这是最好的方法。