Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 做定期工作(如向web服务器发送位置数据)的最佳方法是什么?_Android_Performance - Fatal编程技术网

Android 做定期工作(如向web服务器发送位置数据)的最佳方法是什么?

Android 做定期工作(如向web服务器发送位置数据)的最佳方法是什么?,android,performance,Android,Performance,我需要定期(每5秒)将我的位置信息(纬度、经度)发送到web服务器,即使我的应用程序不在前台,那么从资源使用和优化角度来看,哪种方法是最好的?后台服务是一个不错的选择,我在文档中读到,在API级别26及更高版本中,当应用程序不运行时,它有一些限制 如果您有任何帮助,我们将不胜感激。为了避免您的应用程序进入睡眠(或打瞌睡)模式,它应该启动前台服务并显示不可撤销的通知 对于计时,可以使用Handler+Runnable Handler+Runnable不一定必须在服务类中,将保持唤醒的是整个应用程序

我需要定期(每5秒)将我的位置信息(纬度、经度)发送到web服务器,即使我的应用程序不在前台,那么从资源使用和优化角度来看,哪种方法是最好的?后台服务是一个不错的选择,我在文档中读到,在API级别26及更高版本中,当应用程序不运行时,它有一些限制


如果您有任何帮助,我们将不胜感激。

为了避免您的应用程序进入睡眠(或打瞌睡)模式,它应该启动前台服务并显示不可撤销的通知

对于计时,可以使用Handler+Runnable

Handler+Runnable不一定必须在服务类中,将保持唤醒的是整个应用程序,而不仅仅是服务

更新:
在一段只有5秒钟的时间里,我知道的唯一方法就是让设备保持清醒,当然这会影响电池消耗。对于更长的时间(>15分钟),AlarmManager可能是一个更好的解决方案,电池消耗更少

为什么要否决投票?我只是想知道这样做的正确方法。你必须阅读堆栈溢出的规则并参观一下。它将向您展示如何正确地提出一个问题以及允许的问题。这样你就不会被打到。谢谢你的回答。但是资源使用情况如何(比如电池消耗)?这是最佳方式吗?我更新了答案