导航:首页 > 操作系统 > android定时器

android定时器

发布时间:2022-01-14 02:49:28

android 定时器如何让某天某个时间启动

Android中使用AlarmManager进行定时操作,现在需要启动多个定时器,但无论采用哪种方式后面的定时器都会将前面的定时器覆盖掉(Android系统版本2.1),只启动最后一个定时器,见代码 java code// 方式一for (int i = 0; i < 10; i ++) { ... AlarmManager am = null; am = (AlarmManager) context.getApplicationContext().getSystemService(Context.ALARM_SERVICE); ... Intent i = new Intent("xxx"); PendingIntent sender = PendingIntent.getBroadcast(context.getApplicationContext(), 0, i, PendingIntent.FLAG_UPDATE_CURRENT); ... am.setRepeating(...);}// 方式二AlarmManager am = null;am = (AlarmManager) context.getApplicationContext().getSystemService(Context.ALARM_SERVICE);for (int i = 0; i < 10; i ++) { ... Intent i = new Intent("xxx"); PendingIntent sender = PendingIntent.getBroadcast(context.getApplicationContext(), 0, i, PendingIntent.FLAG_UPDATE_CURRENT); ... am.setRepeating(...);} 请问如果要实现启动多个定时器应该怎么操作?Android系统的闹钟就是采用AlarmManager进行操作的,如何才能启动多个定时器呢?先谢谢大家了 ------解决方案-------------------- public static PendingIntent getBroadcast(Context context, int requestCode, Intent intent, int flags) requestCode 需要是唯一的

② 新手对于Android定时器的问题

私信给你了

③ android怎么设置一个定时的任务

我知道的有三种方法;
方法一:可以通过android自带的Handler机制,里面有new Handler().postDelayed(new Runnable(){
@Override
public void run() {
//延迟的时间到了执行
}
},延迟的时间);

方法二:可以通过java里面的线程来写,new Thread().sleep(延迟时间);时间到了会继续执行;
方法三:java定时器(有很多方法)例如:
Timer timer = new Timer();
timer.schele(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, long delay,long period);
delay延迟的时间,period为多久执行一次;
个人推荐用方法一,毕竟安卓系统自带的,并且安卓不适合加定时器,如果处理不当一直执行的话,要么卡,要么程序崩溃。还有发布版本可能审核不通过。

④ Android Studio定时器!

你的意思是,假设3个RadioButton,第一个设为10秒,第二个设为20秒,第三个设为30秒,然后一起倒计时到0吗?如果是这样的话,只需要在Handler的handleMessage中去减时间就行了。
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
xx.setText(Integer.parseInt(xx.getText()-1);
}
};

⑤ android设置定时器调用时设置时间

你的意思是,假设3个RadioButton,第一个设为10秒,第二个设为20秒,第三个设为30秒,然后一起倒计时到0吗?如果是这样的话,只需要在Handler的handleMessage中去减时间就行了。
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
xx.setText(Integer.parseInt(xx.getText()-1);
}
};

⑥ 有关Android中定时器的问题

你这里犯了一个基本的错误。
你的timer是没有问题的,问题在Toast.makeText(e201301.this, "ABCD", Toast.LENGTH_LONG).show();中。

另外你说没有报错,我不太相信,logcat里面应该会有log出来的。除非你的logcat有问题。
另外把Toast.makeText(e201301.this, "ABCD", Toast.LENGTH_LONG).show();
换成其他基本的语句应该是不会有问题的。

这里的问题主要出在你用timer开了一个新线程,然后你希望在新线程里面,直接在UI线程上显示东西。于是就有错了。

如果你只是为了测试timer,你可以把Toast.makeText(e201301.this, "ABCD", Toast.LENGTH_LONG).show();
换成Log.e("Timer在运行", "ABCD");
这样你就会看到logcat里面,按照你设定的时间,不断的输出这句LOG。也就是Timer正常运行了。

如果你依旧希望能在UI线程上显示什么,那么你可以参考下线程间通信的handle、Message。或者简单利用AsyncTask等

⑦ android 定时器暂停 可以用canel()方法 但我又想再次唤起 用什么方法

android 定时器是一个线程,线程canel 以后,只能重新new 并调用 start启动。

具体实现代码:

  1. 创建线程定时器同理

    Thread thread = new Thread();

    thread.start(); 启动线程

  2. 当线程或定时器停止后,需要重新new

    thread = new Thread();

thread.start(); 重新启动线程或定时器

⑧ android 哪种 定时器比较好

AlarmManager

这个可以唤醒cpu。

其他的在屏幕关掉后不会运行

⑨ 安卓定时器Handler如何关闭

{
publicTimeCounts(longmillisInFuture,longcountDownInterval){
super(millisInFuture,countDownInterval);//参数依次为总时长,和计时的时间间隔
}

@Override
publicvoidonFinish(){//计时完毕时触发

}

@Override
publicvoidonTick(longmillisUntilFinished){//计时过程显示
//倒计时数可以写在这儿
}
}

TimeCounts timeCounts = new TimeCounts(30000, 1000);//总时长30s,间隔1s

timeCounts.start();//倒计时开始

timeCounts.cancel();//取消倒计时

⑩ android定时器alarmmanager和timer的区别

Java的Timer类可以用来计划需要循环执行的任务。
简单的说,一个Timer内部封装装了“一个Thread”和“一个TimerTask队列”,这个队列按照一定的方式将任务排队处理。封装的Thread在Timer的构造方法调用时被启动,这个Thread的run方法按照条件去循环这个TimerTask队列,然后调用TimerTask的run方法。

但是,如果CPU进入了休眠状态,那么这个thread将会因为失去CPU时间片而阻塞,从而造成我们需要的定时任务失效。上述定时任务失效的场景分析:假设定时任务的条件是到了时间xx:yy才能执行,但由于cpu休眠造成线程阻塞的关系,当前系统时间超过了这个时间,即便CPU从终端中恢复了,那么由于条件不满足,定时任务在这一次自然就失效了。

它需要用WakeLock让CPU 保持唤醒状态。这样会大量消耗手机电量,大大减短手机待机时间。这种方式不能满足需求。

AlarmManager是Android 系统封装的用于管理RTC的模块,RTC(Real Time Clock) 是一个独立的硬件时钟,可以在 CPU 休眠时正常运行,在预设的时间到达时,通过中断唤醒CPU。这意味着,如果我们用 AlarmManager 来定时执行任务,CPU 可以正常的休眠,只有在需要运行任务时醒来一段很短的时间。

阅读全文

与android定时器相关的资料

热点内容
java毕业设计文献 浏览:138
筹码集中度指标源码 浏览:477
listsortjava 浏览:180
plc闪光电路编程实例 浏览:297
socket编程试题 浏览:201
华为的服务器怎么设置从光驱启动 浏览:867
程序员真的累吗 浏览:323
学信网app为什么刷脸不了 浏览:871
天蝎vs程序员 浏览:991
单片机下载口叫什么 浏览:186
程序员的道 浏览:924
云服务器不实名违法吗 浏览:556
怎样查看文件夹图片是否重复 浏览:993
文件怎么导成pdf文件 浏览:806
打开sql表的命令 浏览:101
安卓手机如何面部支付 浏览:37
天元数学app为什么登录不上去 浏览:823
明日之后为什么有些服务器是四个字 浏览:104
安卓系统l1是什么意思 浏览:26
服务器一直崩应该用什么指令 浏览:924