7 


使用 Wireless Messaging API

Sun JavaTM Wireless Toolkit for CLDC 利用成熟的模拟环境来支持 Wireless Messaging API (WMA)。WMA 1.1 (JSR 120) 使 MIDlet 可以发送和接收短消息服务 (Short Message Service, SMS) 或小区广播服务 (Cell Broadcast Service, CBS) 消息。WMA 2.0 (JSR 205) 也支持 MMS 消息。

本章介绍可用于开发 WMA 应用程序的工具。首先介绍如何配置仿真器的 WMA 支持。接下来介绍 WMA 控制台,一种用于测试 WMA 应用程序的便利实用程序。本章末尾简要介绍了网络监视器的 WMA 支持。


7.1 设置仿真器电话号码

每个运行中的仿真器实例都有一个模拟电话号码,它显示在仿真器窗口的标题栏中。这些电话号码很重要,因为它们被用作 WMA 消息地址。默认情况下,第一个仿真器实例的电话号码为 +555000,后续仿真器实例的号码均是唯一的并按升序排列:+5550001、+5550002、+5550003 等。

您可以通过选择“编辑”>“首选项”,然后在左窗格中选择 "WMA" 来更改指定的电话号码。

图 7-1 设置 WMA 首选项

WMA 首选项包括“下一个仿真器的电话号码”、“首次分配的电话号码”、“% 随机消息片段丢失”和“消息片段传递延迟 (毫秒)”。

“下一个仿真器的电话号码”字段取其字面含义。如果在此字段中填写一个号码,则下一个仿真器实例将使用该号码。

如果已使用“下一个仿真器的电话号码”,或该字段为空,则下一个仿真器实例将使用“首次分配的电话号码”。后续实例依此类推。

例如,假设您在“下一个仿真器的电话号码”中输入 +6269333,而在“首次分配的电话号码”中输入 +5550000,如果启动四个仿真器实例,则其电话号码将依次为 +6269333、+5550000、+5550001 和 +5550002。


7.2 模拟不可靠的网络

长消息被分割成片段,然后再分别发送这些片段,全部接收完毕后再将这些片段重装为长消息。您可以在 Sun JavaTM Wireless Toolkit for CLDC 中模拟无线网络的某些不可靠方面。与前面一样,请选择“编辑”>“首选项”,然后选择 "WMA"。

如果希望工具包丢失某些消息片段,请将“随机消息片段丢失”滑块调整为所需的百分比。要模拟发送和接收消息片段过程中的延迟,请在“消息片段传递延迟”字段中输入以毫秒为单位的延迟时间。


7.3 通过 WMA 控制台发送消息

WMA 控制台是一种便利的实用程序,用户可以使用它发送和接收消息。例如,用户可使用 WMA 控制台向仿真器上运行的某个 MIDlet 发送 SMS 消息。

要启动 WMA 控制台,请选择“文件”>“实用程序”。单击“WMA 控制台”,然后按“启动”。

图 7-2 WMA 控制台

WMA 控制台包含“发送 SMS”、“发送 CBS”和“发送 MMS”按钮

7.3.1 发送文本 SMS 消息

要发送文本 SMS 消息,请单击“发送 SMS”,屏幕将显示发送窗口。

图 7-3 发送文本消息

“发送 SMS”窗口包含“文本 SMS”和“二进制 SMS”选项卡。 图中显示选择了“文本 SMS”

该窗口自动列出所有正在运行的仿真器实例的电话号码。选择目的地(按住 Ctrl 键,同时单击鼠标选择多个目的地),并输入端口号(如果需要)。键入消息,然后单击“发送”。

7.3.2 发送二进制 SMS 消息

您可以使用 WMA 控制台将文件内容作为二进制消息发送。单击“发送 SMS”显示发送窗口。单击“二进制 SMS”选项卡。

图 7-4 发送二进制消息

选择了“二进制 SMS”选项卡的“发送消息”窗口

接收方选择方式与发送文本 SMS 消息时相同。用户可直接键入文件的路径,或单击“浏览”打开文件选择器。

7.3.3 发送文本或二进制 CBS 消息

发送 CBS 消息与发送 SMS 消息类似,只是不用选择收件人。要发送文本或二进制 CBS 消息,请在 WMA 控制台中单击“发送 CBS”。屏幕将显示“发送”窗口。

图 7-5 发送 CBS 消息

选择了“二进制 CBS”的“发送消息”窗口

7.3.4 发送 MMS 消息

MMS 消息通常包含一个或多个图像或声音文件。MMS 消息可发送给多个收件人。要从 WMA 控制台中发送 MMS 消息,请单击“发送 MMS”按钮。

用于编写 MMS 消息的窗口有两个选项卡,一个针对收件人,一个针对内容。请先填写主题和收件人。如果要添加更多收件人,请单击“添加”按钮。例如,要将消息发送给正在运行的号码为 +5550001 的仿真器,请在“到”这一行中填写 mms://+5550001。要删除某个收件人,请先选择其所在的行,然后单击“删除”。

图 7-6 添加 MMS 消息的收件人

选择了“标题”选项卡的“发送消息 - MMS”窗口

要在消息中添加媒体文件,请单击“部分”选项卡。单击“添加”将某个部分添加到消息中。要删除某个部分,请选择该部分,然后按“删除”。

图 7-7 向 MMS 消息中添加部分

选择了“部分”选项卡的“发送消息 - MMS”窗口


7.4 在 WMA 控制台中接收消息

WMA 控制台也可接收消息。WMA 控制台窗口在标题栏中具有其自己的电话号码。您可以将消息从正在仿真器上运行的应用程序发送到 WMA 控制台。

接收的消息显示在 WMA 控制台的文本区域中。


7.5 结合使用网络监视器与 WMA

第 5 章中对网络监视器进行了全面介绍。您可以使用网络监视器跟踪从仿真器发送或由仿真器接收的 WMA 消息。

单击 "SMS/CBS" 或 "MMS" 选项卡查看 WMA 消息。有关这些消息及其片段的信息显示在网络监视器的左窗格中。单击某一消息或消息片段可在右窗格中查看其详细信息。

图 7-8 使用网络监视器查看 WMA 消息

选择了 "SMS/CBS" 选项卡的网络监视器显示 WMA 消息