Android AlarmReceive的启动和关闭
2016-07-26 10:57
369 查看
AlarmReceiver的启动
AlarmManager alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
intent1 = new Intent(MyService.this,AlarmReceiver.class);//在这里intent1 要设置为全局变量方便其他地方的使用,在开头设置 public static Intent intent1;
Bundle data = new Bundle();
data.putString("name",name)..........................//这里进行参数的传递
intent1.putExtras(data);
pendIntent = PendingIntent.getBroadcast(MyService.this,0,intent1,PendingIntent.FLAG_UPDATE_CURRENT);//这里pendIntent必须设置为全局变量,为以后关闭AlarmReceiver做准备 public static PendingIntent pendIntent;
//设置广播发送时间,5秒一次
long triggrtAtTime = SystemClock.elapsedRealtime()+5*1000;
alarmgr.set(AlarmManager.ELAPSED,triggerAtTime.pendIntent);//最好把这些代码写在try .....catch(Exception e)......里面 方便异常的获取
AlarmReceiver的关闭
AlarmManger alarm = (AlarmManger)getSystemService(Context.ALARM_SERVICE);
alarm.cancel(pendIntent);//这里用的pendIntent 就是我们前面设置的全局变量,如果启动和关闭不在 同一个类里面 可以用 类名.pendIntent 来关闭AlarmReceiver
AlarmReceiver类
public class AlarmReceiver extends BroadcastReceiver{
@Override
public void onReceiver(Context arg0,Intent arg1){
try{
//在这里面进行 相应的数据操作
}catch(){
}
}
}
AlarmManager alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
intent1 = new Intent(MyService.this,AlarmReceiver.class);//在这里intent1 要设置为全局变量方便其他地方的使用,在开头设置 public static Intent intent1;
Bundle data = new Bundle();
data.putString("name",name)..........................//这里进行参数的传递
intent1.putExtras(data);
pendIntent = PendingIntent.getBroadcast(MyService.this,0,intent1,PendingIntent.FLAG_UPDATE_CURRENT);//这里pendIntent必须设置为全局变量,为以后关闭AlarmReceiver做准备 public static PendingIntent pendIntent;
//设置广播发送时间,5秒一次
long triggrtAtTime = SystemClock.elapsedRealtime()+5*1000;
alarmgr.set(AlarmManager.ELAPSED,triggerAtTime.pendIntent);//最好把这些代码写在try .....catch(Exception e)......里面 方便异常的获取
AlarmReceiver的关闭
AlarmManger alarm = (AlarmManger)getSystemService(Context.ALARM_SERVICE);
alarm.cancel(pendIntent);//这里用的pendIntent 就是我们前面设置的全局变量,如果启动和关闭不在 同一个类里面 可以用 类名.pendIntent 来关闭AlarmReceiver
AlarmReceiver类
public class AlarmReceiver extends BroadcastReceiver{
@Override
public void onReceiver(Context arg0,Intent arg1){
try{
//在这里面进行 相应的数据操作
}catch(){
}
}
}
相关文章推荐
- android studio 提高编译的速度,安装apk过慢问题解决
- 为何 Android 开发者在逐渐用 FlatBuffers 替代 JSON
- 开发日记——手机安全卫士 Day07 2016-7-26 电话短信拦截功能
- NoSuchMethodError: android.content.res.Resources.getDrawable
- Android 画波纹进度条
- Android蓝牙通信编程
- Android Material Design系列之主题样式介绍说明等
- 各LaunchMode的使用场景
- Android开发创建文件夹失败解决方案
- android studio no usages found in project
- 【Egret】Native版本 视频播放器(android)
- 安卓jni的so崩溃调试
- Picasso(毕加索)加载圆形图片、圆角图片
- Android 6.0开发的权限注意事项
- Android Studio你不知道的调试技巧
- 写一个android小闹钟
- Android如何实现自毁
- android 浏览器搜索记录
- Android蓝牙通信聊天实现发送和接受功能
- Android Studio修改包名