Java +安卓 定时任务
1.android 自带闹钟定时任务
安卓闹钟可以配合广播来实现(不推荐),系统资源浪费,安卓系统在5.0以后的定时
任务貌似触发时间不准了,因为了为了省电。
//获取系统闹钟
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
Intent intent = new Intent(ReportDetailsActivity.this, ReportDetailsActivity.MyReceiver.class);
pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, intent, 0);
//开启定时任务
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 1000, 5 * 1000, pendingIntent);
记得在manifeast 文件配置该广播
public static class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (bo > 0) {
if (bo > 240) {//刷票
handler.sendEmptyMessage(3);//弹窗警告 刷票
} else {
handler.sendEmptyMessage(2);
}
}
}
}
在OnDestroy()中取消闹钟
@Override
protected void onDestroy() {
alarmManager.cancel(pendingIntent);
}
2.开启Thread
睡5s中去定时操作任务。
class MyRunnable implements Runnable{
@Override
public void run() {
while (isLoop){
try {
if (bo > 0) {
if (bo > 240) {//刷票
handler.sendEmptyMessage(3);//弹窗警告 刷票
} else {
handler.sendEmptyMessage(2);
}
}
Thread.sleep(5000);
}catch (Exception e){
e.printStackTrace();
}
}
}
}
在onCreate()方法中开启:
loopThread=new Thread(new MyRunnable());
loopThread.start();
在页面销毁时终止掉该Thread
isLoop=false;
loopThread.interrupt();
3. 使用timer类。
开启timer
Timer timer=new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
//TODO ...
}
},new Date(),5000);
终止timer
timer.cancel();
以上三种定时任务除了第一种不要随便使用外,推荐使用第三种和第二种。
Java +安卓 定时任务的更多相关文章
- Java基础--定时任务Timer
Java基础--定时任务Timer 一.Timer介绍 java.util.Timer java.util.TimerTask Timer是一个定时器类,通过该类可以为指定的定时任务进行配置.Time ...
- Java基础--定时任务Timer(转载)
Java基础--定时任务Timer 一.Timer介绍 java.util.Timer java.util.TimerTask Timer是一个定时器类,通过该类可以为指定的定时任务进行配置.Time ...
- php 与java安卓客户端的查询交互
PHP 服务器端: function getids() { $this->output->set_header('Content-Type: application/json; chars ...
- java实现定时任务的三种方法 - 转载
java实现定时任务的三种方法 /** * 普通thread * 这是最常见的,创建一个thread,然后让它在while循环里一直运行着, * 通过sleep方法来达到定时任务的效果.这样可以快速简 ...
- [转]Java实现定时任务的三种方法
在应用里经常都有用到在后台跑定时任务的需求.举个例子,比如需要在服务后台跑一个定时任务来进行非实时计算,清除临时数据.文件等.在本文里,我会给大家介绍3种不同的实现方法: 普通thread实现 Tim ...
- java实现定时任务的三种方法
/** * 普通thread * 这是最常见的,创建一个thread,然后让它在while循环里一直运行着, * 通过sleep方法来达到定时任务的效果.这样可以快速简单的实现,代码如下: * @au ...
- Java之定时任务详解
在我们编程过程中如果需要执行一些简单的定时任务,无须做复杂的控制,我们可以考虑使用JDK中的Timer定时任务来实现.下面就其原理.实例以及Timer缺陷三个方面来解析java Timer定时器. 在 ...
- Java实现定时任务的三种方法(转)
在应用里经常都有用到在后台跑定时任务的需求.举个例子,比如需要在服务后台跑一个定时任务来进行非实时计算,清除临时数据.文件等.在本文里,我会给大家介绍3种不同的实现方法: 普通thread实现 Tim ...
- Java SpringMVC 定时任务
1.web.xml 2.spring-mvc.xml <?xml version="1.0" encoding="UTF-8"?> <bean ...
随机推荐
- 30段有用的javascript代码
1. 如何区分IE及非IE浏览器 if(!+[1,]){ console.log("这是IE浏览器"): } else{ console.log("这不是IE浏览器&qu ...
- Django重新整理2
Auth认证: 1.分配路由和创建视图函数 2.在视图函数中引用Django为我们提供的用户认证组建Auth 3.直接进行判断: def login(request): if request.meth ...
- Java基础09-循环结构
1.while循环(循环次数不确定的情况通常用这个) 特点:先判断,再执行 public class Test{ public static void main(String[] args){ int ...
- JEECMS站群管理系统-- 自定义标签及使用自己创建的表的实现过程
下面是我自己定义的标签mycontent_list 首先,在数据库里创建了一个jc_mycontent的表,其中有id,title,content三个字段 其次,创建了一个实体类 public cla ...
- Qt 日志输出
Qt学习(3)日志输出 普通的打印输出 用 QtCreator 开发 Qt 程序时, 经常需要向控制台打印一些参数.有时候是查看对象的属性是否被正确设置,有时候是查看程序是否执行了某一段代码,或者执行 ...
- 【Linux】ping命令详解
1.ping指定目的地址10.10.0.1 为接口tun0 ping 10.10.0.1 -i tun0
- C# 使用消息队列,包括远程访问
转:https://www.cnblogs.com/80X86/p/5557801.html 功能需求,用到了队列,用的时候出了很多问题,现在总结一下,希望能对有需要的人提供帮助. 我的需求很简单,就 ...
- PHP+phpMyAdmin编程插入数据显示中文乱码的问题
相信初学php的同学应该都会试一些小程序,比如从input文本框输入数据后点击提交,数据自动插入数据库保存. 但是如果是输入中文提交,不经过一定配置,在phpMyAdmin中就会显示乱码.什么%ez. ...
- jQueryMobile(一)
一].jQuery Mobile 页面 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta ...
- Java Knowledge series 3
JVM & Bytecode Abstract & Object Object in Java (1) 所有东西都是对象object.可将对象想象成一种新型变量:它保存着数据,但可要求 ...