定时器刷新详解(程序介绍)
本文为大家介绍定时器刷新的详细程序。
1、定时刷新 只刷新一次
首先要发送一个广播 PendingTIntent。getBroadcast()就类似于一个sendBroadcast
里面有四个参数 第一个就是context 第二个参数是个发送端的私人参数,起区分作用 第三个intent 第四个 flags参数可以指定PendingIntent的一些行为特点,是用来针对Intent.fillIn() ,这里面没有用到0即可。
PendingTIntent 核心就是异步激发 有兴趣的可以看
PnedingTIngtent详解
am.set()方法用来激发,第一个参数是闹钟的类型 就不赘述了 第二个就是开始时间()
这个参数的类型要根据前一个闹钟的类型来的 , RTC_WAKEUP RTC POWER_OFF_WAKEUP使用的绝对时间,其他的类型就是相对时间 ,相对时间就是相对于开机时运行的时间,绝对时间就是当前的时间。
public staTIc void sendUpdateBroadcast(Context context,long time){
AlarmManager am = context。getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(conext, UpdateReceiver。class);
i.putExtra(“time”, time);//time参数是刷新间隔
PendingIntent pendingIntent = PendingIntent。getBroadcast(contexxt, 0, i, 0);
//我这个是系统现在时间加上time时间进行刷新
am.set(AlarmManager。RTC_WAKEUP, System。currentTimeMillis() + time, pendingIntent);
}
然后需要自定义一个接受器刷新的动作在这里面执行
public static class UpdateReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
long times=intent。getLongExtra(“time”,0);
Toast。makeText(context, “开始刷新”+intent。getLongExtra(“time”,0), Toast.LENGTH_SHORT).show();
}
}
2、定时刷新 根据间隔时间一直刷新
类似于闹钟
am.setRepeating ()第二个参数就是第一次刷新时间 (如果时间已经过了,会马上响应一次),第三个就是间隔时间 。注意此广播非覆盖的 如若要改变刷新时间一定要先取消此广播
public static void sendBroadcastRepeat(Context ctx,int hour,int minuter){
Intent intent =new Intent(ctx, RepeatReceiver。class);
intent.putExtra(“hour”,hour);
intent.putExtra(“minuter”,minuter);
PendingIntent pendingIntent = PendingIntent。getBroadcast(ctx,0, intent, 0);
Calendar calendar = Calendar。getInstance();
calendar.set(Calendar.HOUR_OF_DAY, hour);
calendar.set(Calendar。MINUTE, minuter);
calendar.set(Calendar.SECOND, 00);
calendar.set(Calendar。MILLISECOND, 0);
AlarmManager am = getAlaramManager(ctx);
am.setRepeating(AlarmManager。RTC_WAKEUP,calendar。getTimeInMillis(), 1000 * 60 * 60 * 24, pendingIntent);
}
同样也要写一个接收器
public static class RepeatReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Toast。makeText(context, “定时刷新”, Toast.LENGTH_SHORT).show();
}
}
- •Microchip推出业界延迟最短的PCI Express和CXLTM重定时器2020-11-16
- •Imagination展示突破性的新型安全关键驱动程序2020-05-06
- •双缸洗衣机定时器和洗涤选择器电路原理图2019-01-23
- •洗衣机定时器接线原理图2019-01-23
- •555定时器内部结构框图2019-01-23
- •555午休定时器电路2019-01-23
- •触摸曝光定时器2019-01-23
- •简易曝光定时器2019-01-23
- •照相曝光定时器2019-01-23
- •烹饪定时器电路图2019-01-23