Windows Mobile 5.0中为开发人员提供的新功能(2)

http://developer.51cto.com  2007-01-24 14:24  Jim Wilson  51CTO.com  我要评论(0)
  • 摘要:本文从开发人员的观点来了解Windows Mobile版本5.0中的新增功能。它的具体内容包括:Windows Mobile 5.0 API、工具和技术和其他影响开发人员的Windows Mobile 5.0更改。
  • 标签:Windows  Mobile  功能

全球定位系统

现在,很多移动设备在其内部包含 GPS,或者将它作为附件。过去,对于要访问 GPS 设备返回的信息的应用程序而言,要求这些应用程序使用串行 API 直接打开 GPS 设备。该技术产生了两个问题。首先,通过串行 API 工作需要编写相当多的代码,并且要求应用程序开发人员起码具有关于串行设备编程的中等程度的知识。其次,该体系结构将 GPS 数据的接收限制到当前连接的单个应用程序。Windows Mobile 5.0 通过 GPS 中间层驱动程序消除了这些问题。

GPS 中间层驱动程序提供了一个非常易于使用的 API,以便提供对 GPS 数据的共享访问。通过 GPS 中间层驱动程序,Windows Mobile 大大减少了与 GPS 设备交互所需的代码数量,并且使多个应用程序可以同时向 GPS 设备询问配置和定位信息。表 1 显示用于访问 GPS 中间层驱动程序的四个函数。

表 1. GPS 中间层驱动程序函数

函数 说明

GPSOpenDevice

连接到 GPS 中间层驱动程序

GPSCloseDevice

与 GPS 中间层驱动程序断开连接

GPSGetPosition

检索 GPS 位置信息

GPSGetDeviceState

检索有关 GPS 硬件的当前状态的信息

唯一地标识设备

对于需要唯一地标识单个设备的应用程序,Windows Mobile 5.0 包含四个 GetDeviceUniqueID 方法。通过使用 GetDeviceUniqueID,独立软件供应商 (ISV) 现在可以将每个软件许可证与特定设备联系在一起,从而轻松地保护知识产权。公司开发人员可以发现它对于跟踪针对特定设备的数据和应用程序分发很有用。

数字权利管理

数字权利管理 (DRM) 仍然是保护和分发知识产权的一个重要组成部分。对于某些应用程序开发人员而言,支持各种 DRM 引擎 API 之间的差异会降低应用程序的开发速度和代码的可移植性。

为了消除这些问题,Windows Mobile 5.0 提供了基于文件的数字权利管理 (FDRM) API。FDRM 在不同的 DRM 引擎之间提供了公共编程接口。该公共编程接口提高了开发人员工作效率和代码可移植性。开发人员现在只需要考虑 FDRM,而无需考虑设备使用的特定 DRM 引擎。

ActiveSync 交互

开发人员现在可以通过使用 ActiveSyncStartActiveSyncStop 方法从设备内部启动和中止 ActiveSync 同步进程。

其他 Windows Mobile 5.0 函数

表 2 显示本节中未描述的其他 Windows Mobile 5.0 函数。

表 2. 其他 Windows Mobile 5.0 函数
函数 说明

QueryPolicy

提供 DMProcessConfigXML 的简化替代函数,可供开发人员用来检索单个策略设置的值。

ExitWindowsEx

使应用程序可以关闭设备。在 Pocket PC 上,应用程序只是使用 ExitWindowsEx 来重新启动设备。在 Smartphone,应用程序使用 ExitWindowsEx 来关闭或重新启动设备。

DrawFocusRectColor

使用当前主题的颜色和样式绘制指定的矩形,就好像它具有焦点。

现在被公开为托管 API 的现有操作系统功能

这里列出的功能对于 Windows Mobile 平台而言并无新颖之处。真正的新功能是 Windows Mobile 5.0 提供的托管 API。通过提供这些托管 API,Windows Mobile 5.0 使托管开发人员可以直接访问上述功能,而无需本机代码的帮助,也无需考虑应用程序使用的 .NET Compact Framework 的具体版本。

电话

Windows Mobile 5.0 现在通过 Microsoft.WindowsMobile.Telephony.Phone 类公开基本的电话行为。通过使用新的 Phone 类的 Talk 方法,开发人员可以编写应用程序代码以启动电话呼叫,并且可以选择提示用户在呼叫之前验证号码。Phone 类需要对 Microsoft.WindowsMobile.Telephony 程序集的引用。

以下代码显示 Phone.Talk 方法的两种形式。

using Microsoft.WindowsMobile.Telephony; // ... Phone thePhone = new Phone(); // Place a call to the specified number thePhone.Talk("4255551212"); // Place a call to the specified number after // first prompting the user to verify the number thePhone.Talk("4255551212", true);

Outlook Mobile

个人信息管理器 (PIM) 数据是很多移动设备应用程序的核心,并且 Windows Mobile 多年以来已经在 Pocket Outlook 中提供了优秀的 PIM 系统。Windows Mobile 5.0 现在通过“Microsoft.WindowsMobile.PocketOutlook”命名空间和程序集中的类将 Pocket Outlook 直接公开给托管开发人员。通过新的托管 Pocket Outlook API,开发人员可以轻松地将 PIM 合并为他们的应用程序的一部分。表 3 中显示部分常用类。

表 3. 常用的 Pocket Outlook 托管类
说明

OutlookSession

代表 Pocket Outlook 应用程序公开电子邮件、SMS 帐户、约会、联系人和任务的属性。

Appointment

代表一块预定的时间。包含用于标识约会详细信息以及应该如何显示约会提醒的属性。提供应用程序可以处理以便获得约会更改通知的事件。

Contact

代表个人或组织的信息记录。包含 60 个以上用于通过相应事件跟踪联系人信息的不同属性,从而使应用程序可以轻松地跟踪用户或应用程序对联系人数据所做的更改。

Task

代表可诉的待办项。包含各种标识任务详细信息(包括进度以及应该如何显示任务提醒)的属性。提供应用程序可以处理以便获得任务更改通知的事件。

新的 Pocket Outlook 托管对象模型大大简化了与 Pocket Outlook 的应用程序交互。下面的代码显示添加新约会是如此容易。

using Microsoft.WindowsMobile.PocketOutlook; // ... // Create the Appointment and set the details Appointment theAppointment = new Appointment(); // Set the subject theAppointment.Subject = "MEDC Precon"; // Set the appointment to start on May 9, at 9:00 A.M. theAppointment.Start = new DateTime(, 05, 09, 09, 00, 00); // The appointment lasts for eight hours theAppointment.Duration = new TimeSpan(08, 00, 00); // Issue a reminder by having the device vibrate theAppointment.ReminderVibrate = true; // Repeat the reminder until the user dismisses it theAppointment.ReminderRepeat = true; // Create the Outlook session and add the appointment // to the Outlook Appointment Folder using (OutlookSessionsession = new OutlookSession()) { session.Appointments.Items.Add(theAppointment); }

图 1 显示设备运行前面的代码之后的 Pocket Outlook 日历。


共12页: 上一页 [1] 2 [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] 下一页
【内容导航】
Windows Home Server 家用服务器专题
Windows Server 2008专题
windows网络安全指南
赛门铁克诺顿误杀Windows系统文件 导致百万系统崩溃
Windows系统加固专题
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有