Android 做定期工作(如向web服务器发送位置数据)的最佳方法是什么?
我需要定期(每5秒)将我的位置信息(纬度、经度)发送到web服务器,即使我的应用程序不在前台,那么从资源使用和优化角度来看,哪种方法是最好的?后台服务是一个不错的选择,我在文档中读到,在API级别26及更高版本中,当应用程序不运行时,它有一些限制Android 做定期工作(如向web服务器发送位置数据)的最佳方法是什么?,android,performance,Android,Performance,我需要定期(每5秒)将我的位置信息(纬度、经度)发送到web服务器,即使我的应用程序不在前台,那么从资源使用和优化角度来看,哪种方法是最好的?后台服务是一个不错的选择,我在文档中读到,在API级别26及更高版本中,当应用程序不运行时,它有一些限制 如果您有任何帮助,我们将不胜感激。为了避免您的应用程序进入睡眠(或打瞌睡)模式,它应该启动前台服务并显示不可撤销的通知 对于计时,可以使用Handler+Runnable Handler+Runnable不一定必须在服务类中,将保持唤醒的是整个应用程序
如果您有任何帮助,我们将不胜感激。为了避免您的应用程序进入睡眠(或打瞌睡)模式,它应该启动前台服务并显示不可撤销的通知 对于计时,可以使用Handler+Runnable Handler+Runnable不一定必须在服务类中,将保持唤醒的是整个应用程序,而不仅仅是服务 更新:
在一段只有5秒钟的时间里,我知道的唯一方法就是让设备保持清醒,当然这会影响电池消耗。对于更长的时间(>15分钟),AlarmManager可能是一个更好的解决方案,电池消耗更少 为什么要否决投票?我只是想知道这样做的正确方法。你必须阅读堆栈溢出的规则并参观一下。它将向您展示如何正确地提出一个问题以及允许的问题。这样你就不会被打到。谢谢你的回答。但是资源使用情况如何(比如电池消耗)?这是最佳方式吗?我更新了答案