想为在澳大利亚市场上销售的BlackBerry(黑莓)手提式设备开发应用程序吗?你可以试着读读本文的“Hello World”初级版。
BlackBerry Personal Information Manager (PIM)是一种能够及时提供24x7路商业重要信息的便携式设备,这种设备是通过无线网络将用户与全体的E-MAIL用户和其它系统连接起来的。
在澳大利亚,BlackBerry(黑莓)的驱动程序暂时只能够通过Telstra(澳洲电信)获得。随着BlackBerry(黑莓)设备的引进和像Vodafone移动运营商一样的其它无线供应商的到来这一切将改变。
首先,你需要有最新的Java 2 Platform SDK (currently 1.4.2.04)。这个最新的版本你能从Sun’s Web site下载到。SDK的安装将花费一些时间,并且需要大约120M的硬盘空间,但是它提供了你所需要编译的BlackBerry(黑莓)应用软件的所有工具。
然后,你需要安装BlackBerry(黑莓) Java Development Environment (currently version 3.7),这个你可以到BlackBerry Developer Web site网站上下载。这个安装也很简单,需要77M的硬盘空间。使用“完整”这个安装选项可以安装整个文档、代码样例和程序文件,同时也安装了客户端和服务器的模拟器。
当你将应用程序下载到BlackBerry(黑莓)设备后,你就能用客户端模拟器进行测试了,如图A所示:
图 A
BlackBerry(黑莓) 客户端模拟器
在程序组被命名为“Research in Motion”后,这个工具将被安装在“开始”菜单中,同时它的子菜单中将包含BlackBerry(黑莓)的所有工具。从子菜单中,选择“打开JDE”,将打开如图B所示的窗口,在这个窗口中你将看到工作空间和大量的应用程序样例。
图 B
JDE 窗口
新建应用程序
建立你自己的工作空间,选择“文件”>“新建工作空间”后给出你的工作空间的名字和位置。这样工作空间就被创建在你指定的位置了,它的后缀名为.JDW。
下一步创建工程
在这个例子中,我们将通过著名的“Hello World”工程一步一步的演示BlackBerry(黑莓) JDK是如何工作的。创建一个新的工程,选择“工程”>“创建新的工程”。输入你的工程名和文件路径。在这个例子中,我们将要初试化“Hello World”并调用这个工程。
虽然我们建立了一个工程,但是我们还需要添加一些Java代码到我们的工程中。新建一个文件保存我们需要的代码,并以.JAVA为后缀名。我们将这个文件命名为“HelloWorld.JAVA”, 这个文件你可以使用Notepad文本编辑器或其他的文本编辑器来创建。
通常,在Java应用程序中你可以使用import声明来添加你想引用不同的Java类。因为BlackBerry(黑莓)使用Java 2 Mobile Edition,所有你可以获得J2ME的所有类。另外,还有大量的类是BlackBerry(黑莓)特有的,要使用这些类我们需要为用户界面和驱动程序添加接口。
所以你的第一部分代码将类似这样的:
import com.rim.samples.device.resource.*;
import net.rim.device.api.ui.*;
import net.rim.device.api.ui.component.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.system.*;
import net.rim.device.api.collection.util.*;
(编者按:你可以在文档中找到所有的这些类的描述,其中包括JDK的类描述。)
接下来,我们需要为Hello World应用程序创建自定义的类和应用程序,并且使用“pushScreen”方法使我们的应用程序看上去像动态应用程序。
public class HelloWorld extends UiApplication
{
public static void main(String[] args)
{
HelloWorld theApp = new HelloWorld();
theApp.enterEventDispatcher();
}
public HelloWorld()
{
pushScreen(new HelloWorldScreen());
}
}
最后,我们要认真考虑,哪些实际输入的元素是我们希望在屏幕上看到的,这段程序以默认的菜单选项和关闭选项开始。然后我们也可以使用setTitle方法来设置应该出现在我们的应用程序顶部的标题。
public HelloWorldScreen()
{
super(DEFAULT_MENU | DEFAULT_CLOSE);
setTitle(new LabelField(‘Hello World’), LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH));
add(new RichTextField(‘Hello World!’));
}
我们也需要设置用户关闭应用程序后的动作。在这个例子中,我们将对BlackBerry(黑莓) 侧面的Escape键进行设置,当关闭应用程序或者按下了Escape键时,我们将显示一些文字同时关闭这个程序。代码如下所示:
public boolean onClose()
{
Dialog.alert(_’Now exiting application’);
System.exit(0);
return true;
}
public boolean keyChar(char key, int status, int time) {
boolean retval = false;
switch (key) {
case Characters.ESCAPE:
onClose();
retval = true;
break;
}
return retval;
}
}
把HelloWorld.java文件增加到工程中后,要想在BlackBerry(黑莓)上启动这个应用程序还必须在BlackBerry(黑莓)的桌面上创建一个图标。图标应该是28x28像素的,并且是个单层的PNG或者GIF文件。下面我讲述了怎样来创建一个图标文件,当然你也可以使用同样的方法轻松的创建你所喜欢的图形或者图标编辑程序。
增加图标:在你的工程上点鼠标右键,选择“添加文件到工程”,然后就可以看到文件所提供的所有的图标,并进行选择。
构造和配置你的应用程序
当所有组件放置在适当位置后,我们就做好了构造和配置应用程序到BlackBerry(黑莓)设备中的准备工作了。在JDE中,选择“调试”>“开始启动构造进程”。这时你能在JDE底部状态窗口中看见构造的进度。
一旦构造进程成功完成,客户端模拟器将打开并显示你的应用程序,如图C所示:
图 C
应用程序运行时的模拟器
你能使用模拟器来测试你的应用程序,确保这个程序按预期的要求运行。在这个例子中,你可以使用模拟器中的控制键滚动你的程序图标,你也可以使用返回键启动程序。在BlackBerry(黑莓)屏幕上会显示“Hello World”字样。你可以用鼠标点击Escape键或者使用键盘上的ESC键退出。
配置应用程序
因为我们开发的这个应用程序是使用BlackBerry(黑莓) JDE,所以配置起来是相当简单的。当你建立了应用程序后,开发环境将建立一个.JAD("Java Application Descriptor" )文件,这个文件是跟着.cod文件分发给你的应用程序的。
.JAD text/vnd.sun.j2me.ap-descriptor
.COD application/vnd.rim.cod
然后用户一个URL来指向.JAD文件 。当他们浏览这些来自他们的BlackBerry(黑莓)文件时,将触发你所创建的程序的安装。
上面所讲的是一个非常简单的BlackBerry(黑莓)使用JAVA的例子,你可以自己开发你能想像得到的各种应用软件。如果你想知道更多的关于这个平台的开发,在BlackBerry Developer Web Site和许多第三方网站上都有大量的关于BlackBerry(黑莓)开发的资源。BlackBerry(黑莓)开发者的网站上既有基于文章的全面知识,也有开发者的文档和论坛。