在Android中实现像通知程序一样的GMail的最佳方式

时间:2012-01-21 03:18:01

标签: android notifications gmail

我正在寻找为Android制作通知程序类型的应用程序。只需坐在后台并经常通过Internet进行查找,并通知重要的传入数据。

做最好的方法是什么?我怎样才能让它在选定的时间间隔内运行,以便对电池友好?

Android中的Gmail通知似乎会在我连接到互联网后立即查看电子邮件。我的代码有没有办法做同样的事情?

谢谢!

3 个答案:

答案 0 :(得分:3)

刚开始,我应该提到你在问题中描述的技术称为民意调查。轮询的内容是电池/资源不是很友好,你通常希望尽可能远离它(在移动领域)。

现在给出您的问题描述,您要查看的是推送解决方案。这就是Android的Gmail客户端的工作方式。 Android的原生推送解决方案称为C2DM,它可以免费用于版本2.1 +。

现在如何运作?

一般的想法是:使用 Gmail 作为示例,假设服务器(即您的后端)收到用户X的新电子邮件。然后,您的服务器会向X设备上安装的应用发送一条有针对性的消息,此时您的应用将与您的服务器联系并检索该消息。

现在让我简要介绍一下投票:

App: Hey, got anything for me?
Server: Nope
App: sleep for a bit
App: Hey, got anything for me?
Server: Nope
App: sleep for a bit
App: Hey, got anything for me?
Server: Yep, here it is!
...

在后一个示例中,您的应用程序在没有实际完成任何操作的情况下消耗了所有这些额外资源,而在推送方案中,它是一个调用服务器来检索消息。您可以轻松查看错误轮询对电池寿命的影响。

答案 1 :(得分:1)

有一个名为Goofier的应用程序。它完全符合您的要求,可以为多个Gmail帐户提供服务。它被打包为Web应用程序,并在TJWS下在Android上运行。可以使用任何其他应用服务器,并且可以提取应用程序并使其独立运行。

答案 2 :(得分:0)

@Rob AlarmManager是Android cron的替代品。