对于概念验证,我需要能够捕获手机是否具有交互性,反之亦然。 到目前为止,我尝试了以下方法:
BroadcastReceivers捕获SCREEN_OFF和SCREEN_ON事件,但仅在应用程序运行时才有效。如果我尝试将其添加到清单中,如果应用程序未运行,我将无法捕获事件(Android策略)
Scheduling jobs。使用这种技术,我可以检查作业运行时屏幕的状态,而不是怀疑事件。 问题?对于Nougat设备,我可以为作业指定的最短周期时间是每15分钟,这对我的概念验证来说太过分了。
我还没有尝试过服务,因为我在文档中读到这可能不是最好的方法。引用Android文档:
您应该避免使用永久运行的启动服务或执行定期工作,因为即使他们没有执行有用的任务,他们也会继续使用设备资源。相反,您应该使用此页面描述的其他解决方案,并提供本机生命周期管理。仅使用已启动的服务作为最后的手段。 Android平台未来可能不支持已启动的服务
我是以错误的方式看待这个吗?你们建议去服务吗(在这种情况下,我更愿意使用后台服务)。