繁体   English   中英

Android定期从服务器轮询

[英]Android Polling from a Server periodically

我想每隔x分钟从服务器中提取一些数据。 如果信息包含某些信息,我想创建通知。 我希望即使应用程序在后台或手机处于睡眠状态时也会发生此轮询。 我在android中有一些关于轮询的问题。

  • 这样做的最佳方法是什么? 我应该使用
    IntentService,一个AlarmManager,还有什么?

  • 我应该多久轮询一次数据? 我想保持相对频繁,比如每10分钟一次。

我倾向于使用AlarmManager因为我尽量不连续运行服务,除非我真的需要,但它确实取决于你将如何使用它。

如果是我,我会(基于有限的描述): -

  1. AlarmManager设置为在10分钟内启动。
  2. 响应警报,启动轮询数据的服务。
  3. 轮询后,它应该设置一个新的警报再次在另外10分钟内开火。
  4. 该服务自行关闭。

你会想要使用像云到设备消息(C2DM)之类的东西(在iPhone世界中也称推送通知)

可以在http://blog.mediarain.com/2011/03/simple-google-android-c2dm-tutorial-push-notifications-for-android找到一个很棒的教程。

您可以使用Handler来监听服务器。 例如,请反复检查运行代码

您可以创建一个执行此操作的thread 在您的run方法中,您可以创建一个循环,每10分钟轮询一次服务器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM