定期从J2ME应用程序更新服务器

时间:2010-05-12 12:50:51

标签: mobile symbian java-me

我正在编写一个定期更新服务器的J2ME应用程序。我如何使用J2ME实现功能?我如何在启动时在手机上运行应用程序,如何让它继续运行?我打算在symbian平台上部署应用程序

2 个答案:

答案 0 :(得分:2)

有几种方法可以实现这一目标。我认为最好的方法是使用一个单独的线程来处理服务器通信/更新:

public class UpdateRunner extends Thread {
    ...
    public UpdateRunner() {
        // create an open sockets here
    }

    public void run() {
        while(true) {
            try {
                // send your messages/updates to server
            catch(...) {
                // handle errors like disconnections
            }
        }
    }
}

您还可以使用计时器定期运行一些代码:

private class ServerTask extends TimerTask {
    public void run() {
        // send message here 
    }
}

然后使用它:

Timer serverTimer = new Timer();
serverTimer .scheduleAtFixedRate(new ServerTask(), 0, 500);

关于在启动时运行它我不认为这是可能的,因为JVM在允许软件随意使用网络时存在一些安全问题。

答案 1 :(得分:1)

自动启动MIDlet的功能称为Push Registry。 它允许各种事件启动midlet,通常是SMS或蓝牙。 索尼爱立信有一个推送注册表变体,可以在设备启动时启动midlet,这至少支持最新的基于Symbian的手机。 对于诺基亚设备,我建议搜索诺基亚论坛。