程式語言 - Java - J2ME - Set Timer



main.java

import java.util.Timer;
import java.util.TimerTask;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class main extends MIDlet {
    private Timer timer;
    private MyTimerTask task;

    public void startApp() {
        task = new MyTimerTask();
        timer = new Timer();
        timer.schedule(task, 3000);
    }

    public void pauseApp() {
    }

    public void destroyApp(boolean unconditional) {
        if (timer != null) {
            timer.cancel();
        }
    }
}

MyTimerTask.java

import java.util.Timer;
import java.util.TimerTask;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class MyTimerTask extends TimerTask {
    public MyTimerTask() {
    }

    public void run() {
        System.out.println("Timer Expired !");
    }
}

manifest.mf

MIDlet-1: main, , main
MIDlet-Name: main
MIDlet-Version: 1.0
MIDlet-Vendor: You
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.1

編譯、執行

$ javac -classpath midpapi20-2.0.4.jar MyTimerTask.java main.java
$ jar cfm main.jar manifest.mf main.class MyTimerTask.class
$ java -cp microemulator-swing-2.0.4.jar:microemulator-2.0.4.jar:midpapi20-2.0.4.jar org.microemu.app.Main main.jar
    Timer Expired !