在NetBeans Java ME polish环境下开发BlackBerry应用
创始人
2024-07-25 01:31:22
0

本文转自一位正在做Java ME polish在BlackBerry上运行的项目网友的博客,详解了在NetBeans Java ME polish环境下开发BlackBerry应用。

以下为转发的全文:

近日公司要求把之前做的一个Java ME polish项目在BlackBerry上运行。我是一个新手,所以一星期了,还是有小部分bug没能成功运行。下边是我对BlackBerry应用程序开发的一些见解:BlackBerry的介绍我不说了,想了解的朋友可以在网上搜索。在开发之前准备的开发工具:Java JDK,BlackBerry JDE,BlackBerry emulator. 其中BlackBerry JDE/emulator 可以到BlackBerry主站下载:www.blackberry.com。

在网上广为流传的一份BlackBerry应用程序开发者指南里边详细介绍如何用BlackBerry API开发BlackBerry application的各方面内容。

但是我们一般都是用Java ME开发,开发出来的程序是jar格式,可以运行在大部分型号的手机上。可是BlackBerry是不支持jar的,它支持的是cod格式。所以如果你想你开发的Java ME程序运行在BlackBerry上,就必须先把它转为cod格式。

要把一般Java ME程序转为cod可以在程序开发编译过程序中转,也可以对打包好的jar转。

◆对已经打包好的jar文件转为BlackBerrycod格式:进入jar文件所在目录,在cmd(命令行)中进入相应目录,输入下边命令就可以了:引用rapc import="C:\Program Files\Research In Motion\BlackBerry JDE 4.2.1\lib\net_rim_api.jar" codename=TestBB jad=TestBB.jad TestBB.jar

(注:这里rapc 是 C:\Program Files\Research In Motion\BlackBerry JDE 4.2.1\bin\ 目录里的 rapc.exe, 如果环境变量没有设置,这里就要用绝对路径:C:\Program Files\Research In Motion\BlackBerry JDE 4.2.1\bin\rapc, 当然你可以把它写成一个.bat文件来执行。而网上你可以搜索到一个名为Java2Cod.exe的小程序可以直接转换。)

◆在JDE中编译程序:无论你是用BlackBerry API或者Java ME/midp API来开发Java ME程序,都可以在JDE上编译。最终他会自动打包成cod文件。

◆在其IDE中编译打包:因为我是用NetBeans来开发的,所以本人只能提供NetBeans开发BlackBerry程序的见解。而本人是在NetBeans中用Java ME polish来整合开发的。下边介绍Java ME polish中开发BlackBerry程序

(可以参考http://www.j2mepolish.org/docs/platform-blackberry.html)

一、在Java ME polish安装目录里找到platforms.xml,在里边的BlackBerry部分中,加上(我用的是Preview 2.0版本,里边这一句是注释掉,所以要把它activate,也可以在devices.xml中在你想用的emulator 属性里加上这一句。如果没有这一句编译时就不会自动把jar转换为cod文件的.)

polish里支持的版本***系4.2.0,如果你安装BlackBerry版本***的如4.2.1/4.3.0,哪么你要把${BlackBerry目录}/lib/net_rim_API.jar copy到${Java MEpolish}/import里,在platforms.xml的BlackBerry中修改

二、在工程的build.xml中添加blackberry.home属性(你安装的BlackBerry JDE目录)

Java代码

  1.     location="C:/Program Files/Research In Motion/BlackBerry JDE 4.2.1" 
  2. />   

三、如果你编译后打包的jad文件中缺少MicroEdition-Configuration和MicroEdition-Profile两个属性是不能成功转成cod文件的。这可以在工程的build.xml中的属性里的元素中添加:

Java代码 

  1.    
  2.      
  3. if="polish.cldc11"/>         
  4.      

四、如果你用了混淆器的(obfuscator),要把它unactivate,不要用它,因为BlackBerry中的rapc转换过程中会对程序混淆的。

Java代码

  1.     
  2.    

五、在工程的build.xml中的属性requirements用你想编译的BlackBerryemulator,如:

Java代码

  1.                     
  2.     

如果你的程序是一般的Java ME程序,那么就可以编译运行了。但如果你是用BlackBerry API开发的,就要就把build.xml里元素中的,改为

,同时要添加polish.classes.midlet-1的variable。如:

Java代码

  1.         
  2.              
  3.     
  4.  

(注:polish.classes.midlet-1的value是" ",中间有一个空格的,我试过了,如果没有这个定义变量或者这个值中间没有空格,jar是不能转为cod格式。)

这是我初接触BlackBerry时的一点心得。我用BlackBerry API在NetBeans+Java ME polish的环境下写过一个test app,是能成功运行的,希望对初接触BlackBerry的朋友有帮助。

【编辑推荐】

  1. 简介BlackBerry API
  2. Java语言编写BlackBerry应用程序
  3. 简介BlackBerry Mobile数据系统
  4. RIM应用开发入门 安装BlackBerry 6.0 SDK
  5. 简介BlackBerry应用程序开发方法

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...