Mono For Android中AlarmManager的使用
2013-11-19 21:10
459 查看
最近做了一个应用,要求如下:
程序运行之后的一段时间,分别触发3个不同的事件。当然很快就想到了Android中的AlarmManager和BroadcastReceiver。但是毕竟Mono环境和Java环境还是有所不同的,那么在Mono环境下如何实现呢?
最初我是想获取3个AlarmManager来实现,每个AlarmManager控制一个事件的发生,采用3个不同的BroadcastReceiver来接受传递过来的Intent消息,但觉得这样有点浪费资源。后来仔细查看Api才发现只要合理的设置参数,就可以通过一个BroadcastReceiver来处理。具体参见以下函数:
获取AlarmManager实例:
注意:由于是通过PendingIntent传递信息的,所以只要对PendingIntent对象的参数进行区别即可,及设置GetBroadcast()的第二和第四个参数,即可在不同时间,利用一个BroadcastReceiver来接受不同的intent了。
另外,在Mono环境下要注意定义自己的BroadcastReceiver类时,要记得在类名上加上[BroadcastReceiver],即注册这个类表明它是一个BroadcastReceiver。
好了,就这了,刚学习,也讲不出什么高深的东西,就把自己遇到的问题即解决方法记录下来吧!
程序运行之后的一段时间,分别触发3个不同的事件。当然很快就想到了Android中的AlarmManager和BroadcastReceiver。但是毕竟Mono环境和Java环境还是有所不同的,那么在Mono环境下如何实现呢?
最初我是想获取3个AlarmManager来实现,每个AlarmManager控制一个事件的发生,采用3个不同的BroadcastReceiver来接受传递过来的Intent消息,但觉得这样有点浪费资源。后来仔细查看Api才发现只要合理的设置参数,就可以通过一个BroadcastReceiver来处理。具体参见以下函数:
获取AlarmManager实例:
privateAlarmManageralarmMgr; privatePendingIntentalarmIntent; alarmMgr=(AlarmManager)GetSystemService(Context.ALARM_SERVICE); Intentintent=newIntent(context,AlarmReceiver.class); alarmIntent=PendingIntent.GetBroadcast(context,0,intent,0); alarmMgr.Set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime()+ 60*1000,alarmIntent);
注意:由于是通过PendingIntent传递信息的,所以只要对PendingIntent对象的参数进行区别即可,及设置GetBroadcast()的第二和第四个参数,即可在不同时间,利用一个BroadcastReceiver来接受不同的intent了。
另外,在Mono环境下要注意定义自己的BroadcastReceiver类时,要记得在类名上加上[BroadcastReceiver],即注册这个类表明它是一个BroadcastReceiver。
好了,就这了,刚学习,也讲不出什么高深的东西,就把自己遇到的问题即解决方法记录下来吧!
相关文章推荐
- mono for android中使用dapper或petapoco对sqlite进行数据操作
- Mono For Android中完美使用百度地图SDK(v2.1.2&v2.1.3)(转)
- 【月入41万】Mono For Android中使用百度地图SDK
- Mono For Android中使用百度地图SDK
- mono for android中TTS的使用
- 【月入41万】Mono For Android中使用百度地图SDK
- 【月入41万】Mono For Android中使用百度地图SDK
- mono for android 使用Tab 控件
- C#开发Android应用实战——使用Mono for Android和.NET/C#
- Mono for Android 篇二 使用Spinner 实现下拉列表读取Browser.BookmarksUri
- 《C#开发Android应用实战——使用Mono for Android和.NET/C#》--评
- mono for android 使用ListView Adapter
- 3.1 MonoForAndroid用户人机界面-更改与显示文字标签-TextView标签的使用
- 关于mono for android 滑动目录控件的使用 SlidingMenuSharp 控件
- 一、mono for android学习:什么是mono for android(使用C#开发android)
- Mono for Android——使用C#,在手机上运行
- Mono for Android 篇二 使用Spinner 实现下拉列表读取Browser.BookmarksUri
- Android中的AlarmManager的使用
- Android闹钟 AlarmManager的使用
- mono for android开发1