我正在使用 Volley 库从远程数据库中提取数据。
我已将获取过程锁定在 ProgressDialog 内,因为如果没有,我注意到数据可能无法到达应用程序。通过锁定它,我确保数据可以显示给用户。
现在,我已经实现了本地数据库,因此用户不需要每次都从远程数据库获取相同的信息。
仅当满足特定条件时才会获取信息。这是 SQL:
SELECT *
FROM user_meals
WHERE CURDATE() BETWEEN date_of_meal AND DATE_ADD(date_of_meal, INTERVAL 14 DAY)
AND email = '$email'
ORDER BY date_of_meal DESC
LIMIT 1
流程如下:Android 应用程序向 PHP 文件发送请愿书 -> PHP 文件运行 SQL -> PHP 文件答案 -> Android 应用程序监听答案。
所以我的问题是:
如何使获取过程在后台运行,并使其每隔给定的时间运行一次?
谢谢。
编辑:
显然,定期向服务器发出请求是一种不好的做法。因此,我将根据需要处理它们。谢谢大家。
最佳答案
根据定义,定期获取是 very bad practice
因此,您实际上应该只根据需要执行此操作 - 如果您已经激活了 radio 发送功能,那么至少可以背负其他所有内容。 无论如何,正确的方法是创建一个服务(或 Intent 服务),您在其中发布数据并将其同步到网络(我在领域和远程后端之间成功使用它)
关于android - 定期从远程数据库更新本地数据库的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35467240/