mtm*_*ock 11 notifications android broadcastreceiver alarmmanager
我正在编写一个应用程序,需要定期检查服务器是否有新消息并通知用户.我已经看到一些使用AlarmManager来点击BroadcastReciever的例子,这似乎是正确的事情,但我似乎无法让它工作.
任何人都可以向我展示这种事情的一步一步的教程(重复警报触发某种启动通知的背景代码)?
TIA
Cha*_*ins 31
这是一个完整的例子:http://android-in-practice.googlecode.com/svn/trunk/ch02/DealDroidWithService/
这个例子使用的模式,以及我发现似乎运行良好的模式,是使用启动接收器来设置AlarmManager(当然也检查从主Activity开始轮询,对于你的情况应用程序已安装且系统未启动)并让AlarmManager向另一个接收器发送Intent:http://android-in-practice.googlecode.com/svn/trunk/ch02/DealDroidWithService/src/com/manning/aip /dealdroid/DealBootReceiver.java
然后从AlarmReceiver启动一个IntentService:http: //android-in-practice.googlecode.com/svn/trunk/ch02/DealDroidWithService/src/com/manning/aip/dealdroid/DealAlarmReceiver.java
从您的IntentService然后进行网络调用以轮询数据,或者您需要做什么.IntentService自动将您的工作放在后台线程中,非常方便:http: //android-in-practice.googlecode.com/svn/trunk/ch02/DealDroidWithService/src/com/manning/aip/dealdroid/DealService.java
检查这些类的文档,很多都在那里.
这个例子的警告是它没有处理唤醒锁定间隙(如果你需要它,优秀的CommonsWare代码会这样做),但是它可能会给你一些关于如何使用AlarmManager和服务进行"轮询"的更多想法.东西.
更新:代码现在在这里:https://github.com/charlieCollins/android-in-practice
| 归档时间: |
|
| 查看次数: |
14939 次 |
| 最近记录: |