首先,使用過Eclipse編寫Android與J2ME程式的同學們都知道,Eclips可以通過模板快速建立一個程式,那麼我們就從建立兩個簡單的應用開始,一個是J2ME的,一個是Android的。
J2ME程式如下:package cn.edu.buaa.Software;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public class MyMidlet extends MIDlet {
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
}
Android程式如下:package cn.edu.buaa.Software;
import android.app.Activity;
import android.os.Bundle;
public class myActivity extends Activity {
/** *//** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
}
}
兩個程式如果要運行起來,對於J2ME而言,必須有一個MIDlet的子類,而對於Android,則必須有一個Activity的子類。在某種意義上,這兩個類在功能上,是相同的,而且它們在生存周期等方面也極為的相似。
而J2ME的MIDlet相對簡單,只有startApp(),pauseApp()和destroyApp(boolean arg)三個方法,分別用於load、pause與exit(這樣理解稍微有些淺薄,不過在簡單的應用中的確如此)。通過上述比較,我們可以看出來google並不能在理念上超越j2me,而只是讓它的功能變得更強大(這已經難能可貴了)。
至於這兩個類的具體用法,我不在這裡敖述,去看官方API文檔或者範例程式碼會更方便一些。
單純有這兩個類已經足以讓程式正常運行了,但是沒有UI的程式對於使用者來說是沒有意義的,下一次我將對Android與J2ME的UI呈現做初步的比較。
謝謝!