Symbian S60平台JAVA开发环境搭建步骤

花了很长时间,终于成功安装了诺基亚S60的JAVA开发环境,网上介绍的方法不多,有些还有问题,于是就想把过程写出来了,大家可以参考一下。 

1、软件准备

1.1 JDK或者JRE下载

为了运行Eclipse必须安装JRE(当然JDK也可以),这个可以到http://www.oracle.com/technetwork/java/javase/downloads/index.html下载。  

1.2 nS60_jme_sdk_3rd_e_FP1

  

nS60_jme_sdk_3rd_e_FP1是诺基亚官方提供的开发包,正式名称为S60 Platform SDKs for Symbian OS, for Java™,里面包含了模拟器和类库,下载地址是: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)”下载。下载时会提示登录然后才能下载,如果没有账号,可以注册一个,不过中文注册页面似乎有问题,注册时会提示“地区名无效”,去英文注册页面就可以了,地址为:https://www.forum.nokia.com/Profile/Join.xhtml?locale=en。下载后点击安装包中的setup.exe进行安装。  

1.3 Eclipse下载

  

Eclipse有针对不同开发语言的版本,这里要下载的是针对J2ME的版本Pulsar for Mobile Developers,这个可以在 http://www.eclipse.org/downloads/ 下载Pulsar for Mobile Developers包,32位的压缩包下载地址是 http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/helios/R/eclipse-pulsar-helios-win32.zip 。解压后点击里面的eclipse.exe即可运行。  

(PS:如果你在双击eclipse.exe后提示Failed to create the Java Virtual Machine,如下图,请打开Eclipse安装目录下的eclipse.ini,修改红色标记的数字,这样就能正常打开Eclipse了。  

  

-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
–launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.pulsar.product
–launcher.defaultAction
openFile
–launcher.XXMaxPermSize
128M
-showsplash
org.eclipse.platform
–launcher.XXMaxPermSize
128m
–launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dosgi.framework.extensions=org.eclipse.mtj.core.hooks
-Xms40m
-Xmx256m  

)  

1.4 MTJ(Mobile Tools for Java)下载

  

MTJ(Mobile Tools for Java)可以对诺基亚的移动开发进行创建、测试和打包。下载地址:http://www.eclipse.org/downloads/download.php?file=/dsdp/mtj/downloads/drops/R-1.0.1-200909181641/dsdp-mtj-runtime-1.0.1.zip 。  

2、软件配置

2.1 在Eclipse中配置模拟器

  

首先将下载的MTJ(Mobile Tools for Java)文件dsdp-mtj-runtime-1.0.1.zip 解压缩到 eclipse 的安装根目录下。  

打开Eclipse,点击 Windows -> Preferences -> J2ME -> DeviceManagement,如下图:  

  

点击“Manual Install”,选择你安装的SDK 的根目录,如下图:  

  

点击”Finish”之后还需要对编辑器做些配置。  

2.2 针对debug及coding的配置

  

接着配置调试超时时间,点击 Window -> Preferences -> Java -> Debug,取消对 Suspend execution on uncaught exceptions 和 Suspend execution on compilation errors 的选中;将 Debugger timeout(ms) 和 Launch timeout(ms) 分别设置为 15000、20000,如下图所示。  

  

除此之外,顺便修改下Eclipse的自动完成设置,点击 Window -> Preferences -> Java ->Editor->Content Assist,将Auto activation triggers for Java处修改为“ .abcdefghijklmnopqrstuvwxyz”,这样就可以比较方便地使用Eclipse的自动完成功能了,如下图。  

  

点击 Window -> Preferences -> J2ME,把Debug Server Time-out(ms) 设置为 60000,如下图。  

  

2.3 模拟器的配置

  

点击 开始 -> 所有程序 -> S60 Developer Tools -> 3rd Edition FP1 SDK -> MIDP ->Languages ->Change to Chinese,把模拟器语言改成中文。  

点击 开始 -> 所有程序 -> S60 Developer Tools -> 3rd Edition FP1 SDK -> MIDP -> Emulator,运行Nokia模拟器,如下图所示:  

  

然后点击 开始 -> 所有程序 -> S60 Developer Tools -> 3rd Edition FP1 SDK -> MIDP ->Tools->Device Connection,运行连接器,如下图所示:  

  

等模拟器启动完毕后就可以双击WLAN连接模拟器,这样就可以在Eclipse中调试J2ME程序了(注意使用这个模拟器调试程序时一定要确保它处于connected状态)。  

点击 Device Connectivity Tool for S60 SDK上的Tools->Diagnostics,会弹出Diagnostics界面,在上面可以看模拟器的情况,包括 运行的程序、存储空间、CPU、内存 的信息,如下图所示。如果出现”cannot start ecmt manager“的提示,修改 C:\S60\devices\S60_3rd_MIDP_SDK_FP1\bin\epoc32\tools\ecmt\config\config.properties ,在 epdt.java.version.start=1.4.1,1.4.2,1.5,5.0 后加上 ,1.6,6.0 ,修改后为 epdt.java.version.start=1.4.1,1.4.2,1.5,5.0,1.6,6.0 ,这样就可以了。  

  

当然,上面的是用模拟器来调试程序,如果你有Nokia的智能手机,也可以在真实机上调试,这样结果更精确。  

方法如下:  

先安装 Nokia PC Suit,Nokia 6120C 的版本下载地址为:http://www.nokia.com.cn/get-support-and-software/software/nokia-pc-suites/compatibility-and-download# ,其它型号的手机可以在这里下载:http://www.nokia.com.cn/get-support-and-software/software 。  

然后连接手机到电脑,安装完驱动后,PC套件会提示手机连接成功。然后安装手机端的软件,默认地址为  C:\S60\devices\S60_3rd_MIDP_SDK_FP1\s60tools\Ecmt\EcmtAgent_MIDP.SIS ,双击即可安装。在手机上启动安装好的软件,界面如下图:  

  

然后在电脑上启动 Device Connectivity Tool for S60 SDK ,点击 开始 -> 所有程序 -> S60 Developer Tools -> 3rd Edition FP1 SDK -> MIDP ->Tools->Device Connection,然后选择手机USB对应的COM口,一般为 \Devices\USBSER000 ,点击Connect连接,成功后会提示Connected,如下图:  

  

此时,手机端也会提示连接成功,如下图:  

  

同理,可以在 Device Connectivity Tool for S60 SDK 上查看手机信息。  

到这里,就可以用模拟器或真实机调试程序了。  

3、创建项目

  

打开Eclipse,新建 J2ME 项目 HelloWorld,只有一个 MIDlet,源码如下:  

  1. package com.helloworld;     
  2.       
  3.  import javax.microedition.lcdui.Display;     
  4. import javax.microedition.lcdui.Form;     
  5. import javax.microedition.midlet.MIDlet;     
  6. import javax.microedition.midlet.MIDletStateChangeException;   
  7. public class HelloWorld extends MIDlet {   
  8.      Display display;   
  9.      public HelloWorld() {   
  10.          super();   
  11.          display = Display.getDisplay(this);   
  12.      }   
  13.      protected void destroyApp(boolean arg0) throws MIDletStateChangeException {   
  14.      }   
  15.      protected void pauseApp() {   
  16.      }   
  17.      protected void startApp() throws MIDletStateChangeException {   
  18.          Form form = new Form(“Hello S60 JAVA”);   
  19.          form.append(“Hello World!”);   
  20.          display.setCurrent(form);   
  21.      }   
  22.  }  

  

然后运行项目,具体看图:  

  

接着会出现一个提示进程的框,等出现Done时,就完成了。  

  

有时可能会出现“Jar file could not be initialized”的提示,如下图:  

  

解决办法是:在Eclipse上点击 Window -> Preferences -> J2ME -> Device Management,选择S60 的 Emulator 后,点击 Edit ,在 Edit S60Emulator Definition 中的 Basic 页项中将[%classpath%|-classpath “%classpath%”] 删掉就可以了。注意删掉后,一定要重启下Eclipse。

  
这时,在模拟器或者真实机上就可以看到结果了,至此,搭建工作完毕!  

 

4、其它信息

  

如果你重装了SDK,会发现在Eclipse找不到模拟器,而且安装目录也被加上了 _1 这样的字符,如果你再卸载重装一次,会发现那个数字加了1, _2 。解决办法是卸载SDK,然后打开注册表编辑器,找到 【HKEY_LOCAL_MACHINE\SOFTWARE\Nokia】,删掉下面的 S60 3rd Edition SDK for Symbian OS, Supporting Feature Pack 1, for MIDP ,然后再重装,这样Eclipse就能找到模拟器了。  

当你把生成的jar文件在手机上安装时,你会发现提示 “JAR文件不支持”,这是由于配置文件的缘故,解压 jar 文件,打开 META-INF 下的 MANIFEST.MF,在最下面加上 MIDlet-1:[和MIDlet-Name的属性相同],[图片文件名],[主Midlet,包含全路径] ,例如 MIDlet-1: HelloWorld,/icon.png,HelloWorld,然后要新建个文件夹res,把icon.png图标文件放在里面,再压缩为zip文件,把zip后缀改为jar,放到手机就可以安装了。
   

注:这篇文章(http://dudibo.com/hOg)部分内容来自 http://u.dudibo.com/d52a86/   ,其余为原创,转载请注明出处。  

 

发表评论

邮箱地址不会被公开。

This site uses Akismet to reduce spam. Learn how your comment data is processed.