处理后台进程的最佳方法

时间:2011-04-12 15:34:37

标签: android notifications listener broadcastreceiver

两个星期以来我买了第一部安卓手机 而我正在开始我的第一个真正的应用程序。 我的手机是LG Optimus 2X,其中一个缺少的是一个 当有未接来电,短信,电子邮件等时通知...

所以我想知道最好的方法是什么。

因为我知道我有一个接收短信的广播接收器,我称之为 将点亮手机按钮的服务(不要为此烦恼) 部分,它的工作)。 但似乎这种方法只适用于短信,电话,而不是 电子邮件。

所以知道我正在考虑使用Listeners代替一切,但是 这意味着让服务运行不间断。不确定它是最好的 方式...

我希望我很清楚,而且我的英语也不错。 Thx提前

2 个答案:

答案 0 :(得分:0)

我将有兴趣了解如何实现电子邮件通知的侦听器框架。但我离题了。如果您想拥有后台服务,那么最好的方法就是轮询。如果你让你的服务在后台运行,那么服务成为android杀死的主要候选者,如果它在资源上运行不足。但是,如果您正在尝试利用Android中的现有电子邮件客户端,则轮询可能对您不起作用。 (据我所知,您需要在收到电子邮件时保持监听器正常运行。)

所以最好的办法是使用AlarmManager建立一个轮询服务,并编写自己的自定义电子邮件客户端代码(不需要UI)。在定期的时间间隔内,您可以轮询您的电子邮件服务器以检查是否有新的电子邮件,然后将android inbuild电子邮件客户端作为待处理的Intent进行调用。我假设在实现这个问题时可能会遇到一些后勤问题。 (例如:您轮询电子邮件客户端,但是当您通知用户并且用户响应通知时,您将打开Android电子邮件客户端,但仍然没有新电子邮件,因此可能会混淆用户),但这是我能想到的是什么。

答案 1 :(得分:0)

我建议您使用BuzzBox SDK。它有一个调度程序,您可以使用cron字符串和简单的通知api进行配置。您还可以在应用程序中添加集成设置UI,其中包括夜间振动,闪烁和禁用。 查看:http://hub.buzzbox.com

相关问题