Android Timer编写方式深解

移动开发 Android
许多编程人员都会认为,Android Timer的实现方法比较简单,其实真正的草率做起来并非如此。我们在这里就为大家介绍一下这方面的相关知识。

Android手机操作系统是一款基于Linux平台的开源手机操作系统。对于编程人员来说,修改这一操作系统的方法应该很容易就可以掌握。不过中间还是有许多细节需要我们注意。比如写惯java的人可能会认为Android Timer的使用应该如下:

程序功能很简单:10秒后,SetTitle为“hear me?”,然后,实际上这样做是不行的,这跟Android的线程安全有关!

Java代码

package com.ray.test;   
import java.util.Timer;   
import java.util.TimerTask;   
import android.app.Activity;   
import android.os.Bundle;   
public class JavaTimer extends Activity {   
Timer timer = new Timer();   
TimerTask task = new TimerTask(){   
public void run() {   
setTitle("hear me?");   
}   
};   
public void onCreate(Bundle savedInstanceState) {   
super.onCreate(savedInstanceState);   
setContentView(R.layout.main);   
timer.schedule(task, 10000);   
}   
}   
package com.ray.test;  
import java.util.Timer;  
import java.util.TimerTask;  
import android.app.Activity;  
import android.os.Bundle;  
public class JavaTimer extends Activity {  
Timer timer = new Timer();  
TimerTask task = new TimerTask(){  
public void run() {  
setTitle("hear me?");  
}  
};  
public void onCreate(Bundle savedInstanceState) {  
super.onCreate(savedInstanceState);  
setContentView(R.layout.main);  
timer.schedule(task, 10000);  
}  

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.

但实际上的用法应该通过配合Handler来实现Android Timer功能的!

Java代码

package com.ray.test;   
import java.util.Timer;   
import java.util.TimerTask;   
import android.app.Activity;   
import android.os.Bundle;   
import android.os.Handler;   
import android.os.Message;   
public class TestTimer extends Activity {   
Timer timer = new Timer();   
Handler handler = new Handler(){   
public void handleMessage(Message msg) {   
switch (msg.what) {   
case 1:   
setTitle("hear me?");   
break;   
}   
super.handleMessage(msg);   
}   
};   
TimerTask task = new TimerTask(){   
public void run() {   
Message message = new Message();   
message.what = 1;   
handler.sendMessage(message);   
}   
};   
public void onCreate(Bundle savedInstanceState) {   
super.onCreate(savedInstanceState);   
setContentView(R.layout.main);   
timer.schedule(task, 10000);   
}   

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.

Android Timer的相关操作就为大家介绍到这里。

【编辑推荐】

  1. Android SQLite数据库应用技巧分享 
  2. Android模拟器应用技巧详细介绍 
  3. Android画图技巧应用方式分析 
  4. Android dialog应用经验总结 
  5. Android短信发送功能实现技巧分享 
责任编辑:曹凯 来源: javaeye.com
相关推荐

2010-01-27 17:08:01

Android Hel

2010-01-27 16:35:54

Android常用技巧

2010-04-13 16:06:08

Unix操作系统

2010-04-06 14:16:59

CentOS系统

2010-01-27 16:30:47

Android选项卡

2011-03-23 14:43:07

Nagios监控

2011-05-31 16:50:35

Android 线程

2011-04-12 16:01:04

MySQL查询编写

2012-05-10 15:21:50

JavaScript

2015-12-29 10:41:16

2011-04-02 09:48:38

深拷贝

2018-02-09 08:54:36

无服务器架构趋势

2025-03-03 00:05:00

GoTimer调度器

2012-09-17 10:35:41

JavaScriptJS代码

2023-05-22 15:35:10

JavaScriptWeb开发

2010-09-07 13:04:14

CSS Hack

2010-01-28 10:03:19

Android Lis

2016-08-19 15:30:14

深信服

2024-09-13 08:27:00

2018-05-10 13:45:15

Swift网络层协议
点赞
收藏

51CTO技术栈公众号