J2ME开发的一般步骤

J2ME开发的一般步骤最近一段时间发现身边有一本买了一年多的J2ME的书没看,于是抱起来大概看了一下,我的E72是Symbian系统,支持J2ME,所以做了几个简单的小玩意。在学习J2ME开发的过程中有一些简单的心得和体会,现在写下来备忘,如果有朋友也正在学习J2ME开发,觉得有帮助的话,那是最好不过的事情了。 1.开发环境安装配置 目前开发J2ME应用的环境有多种,有基于NetBean的,不过仍以Eclipse为

大家好,又见面了,我是你们的朋友全栈君。

最近一段时间发现身边有一本买了一年多的J2ME的书没看,于是抱起来大概看了一下,我的E72是Symbian系统,支持J2ME,所以做了几个简单的小玩意。在学习J2ME开发的过程中有一些简单的心得和体会,现在写下来备忘,如果有朋友也正在学习J2ME开发,觉得有帮助的话,那是最好不过的事情了。

 1.开发环境安装配置
 目前开发J2ME应用的环境有多种,有基于NetBean的,不过仍以Eclipse为主流。所以本篇以在Eclipse下开发J2ME来介绍。
 1.1下载JDK
 因为这些软件本身是用Java开发的,所以首先需要去Java的官方网站下载JDK了,下载地址是:http://www.oracle.com/technetwork/java/javase/downloads/index.html,当然也可以在国内正规网站下载,这样可以获得比较快的下载速度。
 1.2下载Eclipse
 最开始Eclipse仅仅是针对Java的,现在有不同开发场景下的插件,如JavaScript、PHP、C/C++、Java SE、Java EE及Java ME等,地址是:http://www.eclipse.org/downloads/,这里选择“Pulsar for Mobile Developers”,其下载地址是:http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/helios/R/eclipse-pulsar-helios-win32.zip。这是一个Zip文件,下载完成后如果安装了JRE或者JDK即可双击Eclipse.exe使用。

 2.插件安装配置
 在进行J2ME开发中,个人觉得比较有用的插件如下:
 properties文件的Eclipse插件:http://propedit.sourceforge.jp/eclipse/updates
 Coffee Bytes Java Folding Eclipse插件:http://eclipse.realjenius.com/update-site
 ExploreFS插件: http://www.junginger.biz/eclipse/
 MTJ插件: http://download.eclipse.org/mtj/updates/1.1.2/stable
 安装插件的步骤如下(以安装在Eclipse for J2SE为例,在此基础上添加J2ME插件):找到Eclipse界面上的Help->Install new software…->Add,在”name”处输入” JavaME”,在处输入” http://www.eclipseme.org/updates/ ”,如下图:
 J2ME开发的一般步骤
 点击”OK”之后出现如下界面:
 J2ME开发的一般步骤
 选择要安装的部分,再点击”Finished”就可以自动安装相关插件。注意,视插件大小的不同,安装的时间也会不同,不过一般时间都相对较长。
 为了避免中文乱码的问题,最好了解一下SDK对文件编码的支持程度,一般来说为了简单起见,都是将文件编码设置为“UTF-8”,如下所示:
 J2ME开发的一般步骤
 
 3.开发包安装配置
 目前比较流行的开发包有WTK(Wireless Toolkits)及各支持J2ME的手机厂商自己推出的SDK。如果针对某一类型的手机做开发,可以直接去其官方网站下载SDK,像周公使用的是Nokia E72,它的SDK可以在Nokia的官方网站下载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
 
 注:关于插件的安装及配置在周公的另一篇文章《WinXP下搭建适合Nokia开发的J2ME环境》中有比较详细的说明,网址是http://blog.csdn.net/zhoufoxcn/archive/2010/07/12/5728224.aspx
 
 4.编码及测试
 这里用来举例的是一个简单的例子,这是一个数字时钟,为此我们需要准备12个图片文件,分别用于时钟绘制、表盘及作为应用程序的图标。
 项目体系结构如下:

J2ME开发的一般步骤

 

MainMIDlet.java的代码:

ImageCanvas.java的代码:

 

由于今天要讲述的重点不是如何编写J2ME应用,而是这种讲述整个流程,所以这里不对代码做过多解释。
 
 5.更改有关应用程序的信息
 上面的代码能编译通过并且能在Symbian系列手机上运行,不过如果你就此将生成的jar包拷贝到手机上安装运行,会看到类似下面的效果:
 J2ME开发的一般步骤
 这是因为关于这个J2ME应用很多还是采用了默认设置,为了让我们的应用与众不同,我们应该做一些特有的设置,比如设置应用的logo及应用名称等,这些可以在Eclipse中很方便地设置。打开项目中的“Application Descriptor”文件,然后打开“Application Descriptor”选项卡,如下:
 J2ME开发的一般步骤
 此时这个文件的内容为:
 MIDlet-Version: 1.0.0
 MIDlet-Vendor: MIDlet Suite Vendor
 MIDlet-Jar-URL: DigitalClock.jar
 MicroEdition-Configuration: CLDC-1.1
 MIDlet-1: MainMIDlet,,com.netskycn.MainMIDlet
 MicroEdition-Profile: MIDP-2.0
 MIDlet-Name: Zhou
 我们把它改为:
 MIDlet-1: 卡通时钟,/images/logo.png,com.netskycn.MainMIDlet
 MIDlet-Jar-URL: DigitalClock.jar
 MIDlet-Icon: /images/logo.png
 MicroEdition-Configuration: CLDC-1.1
 MIDlet-Version: 1.0.0
 MIDlet-Name: 卡通时钟
 MIDlet-Description: 卡通时钟
 MIDlet-Vendor: 周公
 MicroEdition-Profile: MIDP-2.0
 在上面的文本中红色加粗部分是新增的,仅仅标识为红色的是在原有基础上做的修改。这样一来我们的应用程序安装之后就可以显示我们指定的名称和图标了,如下图所示:
 J2ME开发的一般步骤
 
 6.代码混淆
 上面的代码确实能够很好的运行,但是由于运行在虚拟机之上的语言都有一个特点,那就是因为比较高级的原因所以很容易被反编译,如果你的点子很好,人家可以通过反编译工具查看你的代码,“借鉴”或者篡改程序代码以达到不可告人的目的(这一点国内的*坝及一些所谓开源的操作系统和国产数据库做得很好,“借鉴”得相当成功,据说有的都进入“核高基”了)。作为公司和个人来说自然不希望出现这样的情况,避免这种情况有几种办法:加壳、加密和混淆。相对来说,混淆是副作用最小的一种,因而也被普遍接受。ProGuard是一款不错的开源混淆工具,它的下载地址是:http://proguard.sourceforge.net/
 将下载的文件解压到一个文件下,然后在Ecplise中做如下配置:
 J2ME开发的一般步骤
 
 7.应用程序打包
 刚刚我们已经设置了ProGuard,的根路径,下面我们来将如何使用。首先选中要打包的项目,然后鼠标右键,选择“Export…”,这时候出现如下界面:
 J2ME开发的一般步骤
 选中“Export Midlet Package”然后点击“Next”,出现如下界面:
 J2ME开发的一般步骤
 在上图中选中“Obfuscate the code”后,打包后的应用程序代码就被混淆了,混淆代码除了是代码更难懂之外,还可以一定程度上减少打包文件的体积。
 
 总结:这是一个周公这几个星期来学习J2ME开发的一个总结,偏重于流程的介绍,关于如何设置应用程序安装后的问题和图标问题周公是费了很大心思才弄明白的。作为备忘,周公写了这篇文章,如果你当前也在学习J2ME开发的初级阶段,或许也能有一点参考价值。周公正在琢磨基于微博的应用,如果有兴趣,请在新浪微博上围观,地址是:http://weibo.com/zhoufoxcn,此外本项目的示例代码和图片可以到此处下载。
 
 周公
 2011-06-12

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/157219.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 三极管放大倍数_放大倍数为100的晶体管

    三极管放大倍数_放大倍数为100的晶体管恢复内容开始三极管的交流放大倍数和直流放大倍数是两个不同的概念,但其值近似相等三极管的直流放大倍数是hFE---hFE=直流IC/IBβ是指三极管的交流电流放大倍数---β=输出交流电流/

  • vb.net 教程 12-4 msHtml 3

    版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。相比之前学习的HtmlDocument类和HtmlElement类,mshtml还提供了网页元素更详细的分类,比如IHTMLScriptElement:脚本元素IHTMLStyleSheet:样式表IHTMLFormElement:表单元素等等这些不同的元素分类有着自己的…

  • linggle的一个特色,就是可以使用关键词_奔驰gle使用技巧

    linggle的一个特色,就是可以使用关键词_奔驰gle使用技巧  Linggle(英语写作学习搜索引擎)是一个可用于英语写作的语法、句子工具,可帮助学习者分析更准确的英文写作建议,能够根据词性来推测短句和句子,可精准的分享出完整英文句子如何撰写。  在英文写作中,作者往往无法确定最适合的英文搭配,这就需要借助一些词典或者网络助手进行查询。本文推荐的Linggle,通过对英文搭配进行概率统计,为用户提供若干个可供选择的可用搭配。下面将简要介绍Lingg…

    2022年10月25日
  • SQL语句order by两个字段同时排序。

    SQL语句order by两个字段同时排序。

  • FOC入门教程_晚上开飞机前面有灯吗

    FOC入门教程_晚上开飞机前面有灯吗深入浅出FOC(FieldOrientedControl)前言:为什么要学习FOC?1.电机控制是自动化控制领域重要一环。2.目前直流无刷电机应用越来越广泛,如无人机、机械臂、云台、仿生机器人等等。3.电机控制工程师薪水较高。需要什么基础?1.C语言,指针,结构体,编程规范。2.STM32外设使用。3.原理图阅读。4.芯片手册阅读。5.数序坐标系知识为什么要出本教程?1.直流无刷电机应用越来越广泛,网上资料比较散落,因此想要出一篇系统性的教程,从头到尾,深入浅出,帮助初学者快速

    2022年10月24日
  • windows安装opencv(opencv安装不了)

    终于实现了在windows下配置Qt和opencv,从刚学opencv尝试,到现在终于配置成功,断断续续经历了一年左右,真实操碎了心。。。走了太多弯路了系统:windows10Qt:Qt5.11.1,mingw5.3版本opencv:3.2.0版本一直有用最新软件的强迫症,这次屈服了,没有使用opencv3.4.2版本,本人尝试了2.7.13版本到3.4.2版本的所有opencv,…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号