论坛首页 移动开发技术论坛

企业移动应用平台---诺基亚S60模拟器下的测试

浏览 4808 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-08-23  
企业移动应用平台的手机终端的UI显示是在lwuit框架上开发的,使用SUN WTK提供的模拟器,运行正常.开发环境配置如下:
Jdk1.4
Eclipse 3.2
Eclipseme1.7.9
Sun Wtk2.5.2
Midp2.0
CLDC1.1
1.S60上的测试
然后准备在诺基亚S60模拟器下测试.于是噩梦开始了
1)nS60_jme_sdk_3rd_e_FP1.zip
运行配置:
在Emulation选项卡中指定设备
Group:S60
Devicie:S60Emulator
其他选项默认
运行时总出现如下错误.
当运行到: Connect to Agent时
eclipse提示错误对话框:
Failed to initialize session
Caught exception:
java.net.ConnectException:Connection refused:connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
看了网上的一些评论,发现普遍有这样的问题.解决办法好像是让换一个新的sdk版本试试.

2)nS60_jme_sdk_v2_6f.zip
运行配置同上
没有出现failed to initialize session 错误.耐心等待(时间很长),终于画面出来了:


再看后台提示:
-VM verbose connection exited
再看网上的资料,说可能是:S60网络连接与其他模拟器不同而引起的.
然后仔细分析代码,发现在打开主页面的这个过程并没有与服务器连接.
只好加入System.out.println进行调试.终于发现程序跑到lwuit出现了问题

2.测试代码
于是写了一段测试代码
package test;
import javax.microedition.midlet.*;
import com.sun.lwuit.*;
import com.sun.lwuit.events.*;
import com.sun.lwuit.layouts.BorderLayout;
import com.sun.lwuit.layouts.BoxLayout;
import com.sun.lwuit.layouts.GridLayout;
import com.sun.lwuit.plaf.Style;
import com.sun.lwuit.plaf.UIManager;
import com.sun.lwuit.util.Resources;

/**
 * @author mfcai
 */
public class HelloLWUITMIDlet extends MIDlet implements ActionListener {
	public void startApp() {
		Display.init(this);
		try{
		Resources r = Resources.open("/javaTheme.res");// 主题文件路径
		UIManager.getInstance().setThemeProps(r.getTheme( "javaTheme")); // 主题名称
		System.out.println("theme_name is:javaTheme");
		}catch(Exception ex){
			System.out.println(ex.toString());
			
		}
		
		Form f = new Form("Hello, LWUIT!");
		f.show();
		Command exitCommand = new Command("Exit");
		f.addCommand(exitCommand);
		f.setCommandListener(this);
	}
	public void pauseApp() {
	}
	public void destroyApp(boolean unconditional) {
	}

	public void actionPerformed(ActionEvent ae) {
		notifyDestroyed();
	}

}

1)s60模拟器的效果
出的错误和前面运行程序出的一模一样.如图:

把这加载主题段代码注释掉
Resources r = Resources.open("/javaTheme.res");// 主题文件路径
		UIManager.getInstance().setThemeProps(r.getTheme( "javaTheme")); // 主题名称
		System.out.println("theme_name is:javaTheme");

2)代码修改后的效果
画面终于出来了.如下:

3)wtk模拟器的效果
在SUN WTK提供的模拟器下,画面显示如下:


3.结论
   s60并不能很好地支持lwuit.网上有资料说lwuit有很好的适应性,看来这句话未必很正确。
   发表时间:2009-08-24  
请问 “Failed to initialize session ”这个问题解决了吗?我试了jdk1.6不行,1.5也不行,正在试1.4....
0 请登录后投票
   发表时间:2009-08-24  
lwuit确实不行,S60都运行困难,S40几乎一无是处。
动画效果在S60中还可以勉强跑一下,S40想都别想。
0 请登录后投票
   发表时间:2009-10-21  
lwuit 对 s60字体支持不行。
eclipse3.2.0 + JDK6.0 + WTK2.5.1 在res文件中我设置了title softbutton button 和主题的字体。在LWUIT Designer 中显示一切正常。换模拟器测试,主题字体大小没用。换Nokia6110测试,发现所有字体大小均无效果,但字体颜色等有效。
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics