macoo

记录收获的点点滴滴

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

近期可能会有针对手机开发的项目,先调查了SymbianS60开发环境的搭建,搭这个环境还真不容易,访问了N多个网站,看了N多个博客,终于把环境搭建完成了,现在记录一下:

一下内容部分转载于:

http://blog.csdn.net/defonds/archive/2010/01/30/5272933.aspx

造轮子的内容我就不自己写了……

背景:系统(WindowsXP)、JDK(jdk-6u13-windows-i586)、WTK(wtk2.5.2)、IDE(eclipse-jee-galileo-SR1-win32)、eclipseme 插件(我使用的在线安装方法:http://www.eclipseme.org/updates/)、混淆器(Proguard4.2)。

关于 WTK 安装配置、eclipseme 插件安装混淆器的安装等这里就不再赘述,详细过程可以去参考作者以前的相关博客。这里只讲述一下 S60 SDK 的安装和 eclipse 相关环境搭建。

步骤一、去 Nokia 官方下载 S60 第三版 FP1 的 SDK 安装包。         nS60_jme_sdk_3rd_e_FP1.zip,大小 246 MB。下载页面:http://www.forum.nokia.com/info/sw.nokia.com/id/6e772b17-604b-4081-999c-31f1f0dc2dbb/S60_Platform_SDKs_for_Symbian_OS_for_Java.html,选择“3rd Edition,FP 1(240MB)”进行下载。

步骤二、安装 Nokia S60 第三版 SDK
        解压缩nS60_jme_sdk_3rd_e_FP1.zip。双击运行解压缩后的 setup.exe 安装文件。安装结束后,开始 -> 所有程序-> S60 Developer Tools -> 3rd Edition FP1 SDK -> MIDP ->点击运行 Emulator,Nokia 模拟器运行图如下,证明你的 SDK 安装成功。

步骤三、配置 Eclipse 下 SDK 的 J2ME 开发环境
        启动eclipse,换个空的工作目录,Windows -> Preferences -> J2ME ->DeviceManagement 点击“Import...”选择你安装的 SDK 的根目录,比如作者的是E:\tools\s60jmesdkv3fp1\sdk\S60_3rd_MIDP_SDK_FP1,点击 Refresh,这时候S60Emulator 和 S60Device 就被 eclipse 识别了,点击 Finish 对它们进行加载。这时候你的“DeviceManagement”下就多出来两个新的选项。选中 S60Emulator,点击 OK 完成环境配置。

步骤四、Debug 设置
       Window -> Preferences -> J2ME,Debug Server Time-out(ms) 设置为60000;Window -> Preferences -> Java -> Debug,取消对 Suspendexecution on uncaught exceptions 和 Suspend execution on compilationerrors 的选中;将 Debugger timeout(ms) 和 Launch timeout(ms) 分别设置为15000、20000。点击 OK 保存设置。

步骤五、开始在 SDK 模拟器下编程
        新建 J2ME 项目 HelloS60,只有一个 MIDlet,源码如下:

package com.defonds.s60;  
   
 import javax.microedition.lcdui.Display;  
import javax.microedition.lcdui.Form;  
 import javax.microedition.midlet.MIDlet;  
 import javax.microedition.midlet.MIDletStateChangeException;  
public class HelloWorld extends MIDlet {  
     Display display;  
     public HelloWorld() {  
         super();  
         display = Display.getDisplay(this);  
     }  
     protected void destroyApp(boolean arg0) throws MIDletStateChangeException {  
     }  
     protected void pauseApp() {  
     }  
     protected void startApp() throws MIDletStateChangeException {  
         Form form = new Form("Hello S60!");  
          form.append("Hello World!");  
         display.setCurrent(form);  
     }  
 }  
运行效果图:

有的朋友可能会有“Jar file could not be initialized”警告,如下图所示:

解决的办法是:Window -> Preferences -> J2ME -> Device Management,选择S60 的 emulator 后选 edit ,在 Edit S60Emulator Definition 中的 Basic 页项中将[%classpath%|-classpath "%classpath%"] 删除掉就可以了。注意删掉后,eclipse一定要重启,不然还是出那个警告。
        有时候也有“Failed to initialize session”警告,如下图所示:

解决办法是:换一个新的空的工作目录,然后按照上述步骤一到步骤六操作一遍就可以了。

还有可能遇到这样的问题:

failed to initialize session

解决的办法是:

在XXX.jad文件中添加一行:
MIDlet-1:[这和MIDlet-Name的属性相同],[图片文件名],[主Midlet,包含全路径]
如:
MIDlet-Jar-Size: 3558
MIDlet-Jar-URL: first.jar
MIDlet-Name: first Midlet Suite
MIDlet-Vendor: Midlet Suite Vendor
MIDlet-Version: 1.0.0
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0
MIDlet-1:first Midlet Suite,hb.jpg,test.First

 

如果你使用的JRE为1.6的话,最好修改一下模拟器的配置文件(默认不支持1.6):%SDKRoot%\bin\epoc32\tools\ecmt\config\config.properties
epdt.java.version.start=1.4.1,1.4.2,1.5,5.0
改为:
epdt.java.version.start=1.4.1,1.4.2,1.5,5.0,1.6

 

到这里为止,你的Symbian S60平台开发环境算是配置完成了。

posted on 2010-03-08 12:29  macoo  阅读(1639)  评论(0编辑  收藏  举报