Android Timer 编写方式
Android 手机操作系统是一款基于 Linux 平台的开源手机操作系统。对于编程人员来说,
修改这一操作系统的方法应该很容易就可以掌握。不过中间还是有许多细节需要我们注意。
比如写惯
java 的人可能会认为 Android Timer 的使用应该如下:
程序功能很简单:
10 秒后,SetTitle 为“hear me?”,然后,实际上这样做是不行的,这
跟
Android 的线程安全有关!
Java 代码
1
package com.ray.test; import java.util.Timer;
2
import java.util.TimerTask; import android.app.Activity;
3
import android.os.Bundle; public class JavaTimer extends Activity {
4
Timer timer = new Timer(); TimerTask task = new TimerTask(){
5
public void run() { setTitle("hear me?");
6
} };
7
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
8
setContentView(R.layout.main); timer.schedule(task, 10000);
9
} }
10
package com.ray.test; import java.util.Timer;
11
import java.util.TimerTask; import android.app.Activity;
12
import android.os.Bundle; public class JavaTimer extends Activity {
13
Timer timer = new Timer(); TimerTask task = new TimerTask(){
14
public void run() { setTitle("hear me?");
15
} };
16
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
17
setContentView(R.layout.main); timer.schedule(task, 10000);
18
} }
但实际上的用法应该通过配合
Handler 来实现 Android Timer 功能的!
Java 代码
19
package com.ray.test; import java.util.Timer;
20
import java.util.TimerTask; import android.app.Activity;
21
import android.os.Bundle; import android.os.Handler;
22
import android.os.Message; public class TestTimer extends Activity {
23
Timer timer = new Timer(); Handler handler = new Handler(){
24
public void handleMessage(Message msg) { switch (msg.what) {