天天看點

開發NokiaS40系列應用程式初級篇

作者:mingjava  文章來源:http://www.j2medev.com/Article/ShowArticle.asp?ArticleID=80

本文講述如何搭建Nokia S40系列手機應用程式的開發環境,并對Nokia UI包進行簡單的介紹。最後提供一個簡單的應用程式。

    我們把Nokia 7210 MIDP SDK內建到eclipse環境下,這樣友善我們進行開發。首先我們搭建起Eclipse的開發環境,可以參考搭建J2ME開發環境,我使用的是J2SDK1.4.2_03+wtk21+eclipse3.0+eclipseME0.4.5,首先你應該從forum.nokia.com.cn下載下傳Nokia_7210_MIDP_SDK_v1.0,然後把它解開放到WTK_HOME/wtklib/devices下面,例如放置好的路徑類似這樣:

C:/WTK21/wtklib/devices/Nokia_7210_MIDP_SDK_v1_0。在這個目錄裡面有nokia提供的說明文檔,在使用Nokia UI API的時候您應該仔細讀讀相關的說明文檔和API DOC。

    實際上現在我們已經可以開始開發基于Nokia 7210的應用程式了,eclipseME提供了添加定制平台的功能,你可以添加基于Nokia 7210的Profile然後添加基于Nokia 7210的平台。讀者可以參考一下eclipse幫助文檔的eclipseME部分,我的做法是在建立J2ME Project的時候依然選擇基于MIDP1.0平台,在Libraries的選項裡面Add External JARs到項目裡面來,添加的jar包含了nokia ui包。如下圖所示:

開發NokiaS40系列應用程式初級篇

    建立項目以後我們就可以使用nokia提供的api了,但是我們要注意如果我們使用了這些api後我們就不能保證程式的可移植性了,這樣的程式多半不能在其他的手機上運作。Nokia提供給我們api總共有兩個package,一共六個類。由于MIDP1.0不支援聲音的處理,這裡面提供了Sound類。另外他還提供了非常有用的FullCanvas類和DirectGraphics,借助它們我們可以完成對圖像的旋轉等操作。關于如何使用這些API開發應用程式,請讀者參考API DOC。

    下面我們編寫一個簡單的應用程式,代碼如下:

package com.j2medev.mingjava;

import javax.microedition.lcdui.Display;

import javax.microedition.midlet.MIDlet;

import javax.microedition.midlet.MIDletStateChangeException;

public class NokiaTest extends MIDlet

{

    Display display;

    NokiaCanvas nc;

    protected void startApp() throws MIDletStateChangeException

    {

        display = Display.getDisplay(this);

        nc = new NokiaCanvas();

        display.setCurrent(nc);

    }

    protected void pauseApp()

    {

    }

    protected void destroyApp(boolean arg0) throws MIDletStateChangeException

    {

    }

}

package com.j2medev.mingjava;

import java.io.IOException;

import javax.microedition.lcdui.Graphics;

import javax.microedition.lcdui.Image;

import com.nokia.mid.ui.DirectGraphics;

import com.nokia.mid.ui.DirectUtils;

import com.nokia.mid.ui.FullCanvas;

public class NokiaCanvas extends FullCanvas

{

    protected void paint(Graphics arg0)

    {

        DirectGraphics dg = DirectUtils.getDirectGraphics(arg0);

        Image welcome = null;

        try

        {

            welcome = Image.createImage("/welcome.png");

        }

        catch(IOException e)

        {

            e.printStackTrace();

        }

        dg.drawImage(welcome,10,10,Graphics.LEFT|Graphics.TOP,DirectGraphics.ROTATE_180);

    }

}

代碼編寫完成後,配置RUN選項的時候我們在Devices的選項中選擇Nokia_7210_midp_sdk_v10選項。運作程式将看到這樣的畫面。

開發NokiaS40系列應用程式初級篇

繼續閱讀