Windows Mobile 6 SDK 中的 Cellular Emulator
现在的 Windows Mobile 设备大多数都拥有电话和其他无线通信的功能。在许多情况下,你想让你的应用程序跟这些通信功能进行交互。例如,你想在电话响起的时候,将你的应用程序播放音乐的声音调小;或者需要直接对通信硬件进行各种操作。那么开发这种类型的应用程序往往比较困难,最大的难点在于测试应用程序。
为了解决测试这种应用程序的困难,Windows Mobile 6 SDK 包含了 Cellular Emulator(蜂窝仿真器)。Cellular Emulator 让你能够在 Device Emulator 中,测试你的应用程序在各种蜂窝通信的情况下的行为。
Cellular Emulator 是一个强大的测试工具,它可以用于测试你的应用程序在蜂窝通信状况变化时的行为。用 Cellular Emulator 可以执行一些简单的测试,如:在仿真器中拨打电话,接听来电和挂断电话,发送和接收 SMS 信息等。为了让开发人员可以测试更复杂的功能,Cellular Emulator 还支持对 SIM 配置信息的修改,还有选择2G网络还是3G网络。所有这些测试工作都不需要用到一台物理设备。
要让 Cellular Emulator 和 Device Emulator 可以一起配合使用,首先你需要把他们关联起来。
1. 记下 Cellular Emulator 左下角状态栏的 COM 端口号。如 COM5。
2. 在 Device Emulator 中选择“File-->Configure...”菜单项,打开 Emulator Properties 对话框。
3. 在 Emulator Properties 对话框中选择 Peripherals 选项卡。
4. 把刚才记下的 COM 端口号输入到 Serial Port 0 文本框中。如果你在下拉列表中找不到你的端口号,可以自己输入进去。
5. 点击 OK 按钮保存设置,关闭 Emulator Properties 对话框。
6. 点击“File-->Reset-->Soft”菜单项,对仿真器进行软重置操作。
待仿真器完成重置过程并重新启动后,你将会看到仿真器的蜂窝网络已经可用了。如果还是不行,可能是安装了 Windows Mobile 6 SDK 之后,没有重新启动系统的原因吧。
给仿真器拨打电话
打开 Cellular Emulator 的 Call Manager 选项卡,在 Phone Number 文本框中输入任意一个电话号码,点击旁边的 Dial 按钮,仿真器的电话铃声将响起,并显示来自所输入的电话号码的来电。这时在 Active Calls 列表中将出现仿真器上的活动通话,Status 显示为 Incoming。
用7272024这个电话号码向仿真器拨打电话:
仿真器收到电话号码为7272024的来电:
从仿真器拨打电话
在 Preset Number 列表中提供了4个可供测试的电话号码。Busy 表示线路忙,Reject 表示拒绝接听,Hang Up After Connect 表示接听后再挂断,No Answer 表示没有回应。尝试在仿真器中拨打7272021,Cellular Emulator的 Active Calls 列表将显示仿真器当前的活动通话。电话接通后持续了10秒钟,然后挂断,也就是Hang Up After Connect。
向仿真器发送 SMS 信息
打开 Cellular Emulator 的 SMS 选项卡,在 Send to device 的多行文本框中输入短信内容,然后点击 Send 按钮将短信发送至仿真器。
仿真器将收到新短信:
还可以设置重复发送。选中 Repeatly 检查框,设定好 Interval(间隔时间)和 Max Count(最大数目),然后再点击 Send 按钮即可。如果你在仿真器中回复了信息,将会在 Cellular Emulator 的 Receive from device 列表中看到你回复的短信。
选择网络
打开 Cellular Emulator 的 Network 选项卡,可以选择2G或者3G网络,断开 GPRS 连接,查看数据通道等。
执行和查看 AT 命令
打开 Cellular Emulator 的Injection 选项卡,这里可以向仿真器发送 AT 命令或事件。
打开 Cellular Emulator 的AT log选项卡,可以看到刚才所有对仿真器的操作对应的 AT 命令。
使用配置文件
这里可以选择使用哪一个 SIM 配置文件,文件内容是 XML 格式。
总结
有了 Cellular Emulator 的配合,Device Emulator 显得更加强大。现在 Windows Mobile 6 开发人员可以使用仿真器进行开发和测试,而不需要购买各种真实设备。遗憾的是,Cellular Emulator 并不支持 Windows Mobile 5.0 和 Windows Mobile 2003 的仿真器。不过好在 Windows Mobile 6 的 API 跟 Windows Mobile 5.0 的绝大部分一样,所以你可以在 Windows Mobile 6 的仿真器中开发和调试 Windows Mobile 5.0 的应用程序。对于 Windows Mobile 2003 可能测试效果没有那么一致,你也可以自己尝试一下。
参考:
What's New for Developers in Windows Mobile 6
原文地址:http://www.cnblogs.com/upto/archive/2007/02/14/cellular-emulater-in-wm6sdk.html