移动开发人员工具区

适用于:
Microsoft® Visual Studio .NET 2003
Microsoft .NET Compact Framework 1.0
Microsoft eMbedded Visual C++ 3.0
Microsoft eMbedded Visual C++ 4.0
Microsoft Windows CE 3.0
Microsoft Visual Studio® 2005
Microsoft SQL Server CE

摘要:本文是“You Can Take It With You”专栏的第三篇文章,介绍对开发人员有帮助的工具、实用程序和下载。

本页内容

新观点新观点
开发环境和平台开发环境和平台
SDK、服务包和模拟器SDK、服务包和模拟器
数据管理数据管理
其他工具和下载其他工具和下载
小结小结

新观点

这是一个星期天的早晨,新罕布什尔的天气格外的好,我的心情也格外舒畅。我刚刚参加完在加拿大安大略省多伦多市召开的移动开发者大会 (MDC),这是一次奇妙的经历。许多人都知道,MDC(加拿大)和 MDC(美国)一样,都是与 VSLive! 共同举办的,而今年的这些会议是首次都在加拿大召开。

虽然一些与会者曾经参加过前几年在其他地方举办的此类会议,但对于来自加拿大东部和美国东北部的许多人来说,这却是他们的第一次机会。第一次参加会议的与会者都怀着激动和兴奋的心情,并对这次大会充满热情。同时,他们也带来了新的观点。

这些开发人员中的许多人是刚刚跨进移动领域,他们正在经历着某些痛苦的过程 — 和我刚涉足这一领域时一样。当我刚涉足移动领域时,一件让我感到吃惊的事情是可用的工具、应用程序和下载的数量。我发现,对这些方面了解得越多,我的移动开发工作就会越有效率。

由此,我引出了本月的主题:“Jim 的移动开发人员工具区”。在这个月的专栏中,我们将考察一系列工具、应用程序和下载,我认为它们是移动开发人员不可或缺的。

开发环境和平台

开发环境和平台是我们应该首先要关注的。它们是进行任何一种移动开发的核心工具。你们之中的大部分人都将可能要用到其中的一个甚至是所有的工具。但我发现,那些刚涉足移动领域的开发人员对于什么工具适用于什么场合仍然感到有些困惑。

Visual Studio .NET 2003 .NET 框架压缩版 1.0

对于那些刚涉足移动开发的人来说,有些工具也许就是他们想要的。Microsoft Visual Studio .NET 2003 和 Microsoft .NET 框架压缩版 1.0 使得移动开发变得不再像从前那么遥不可及。我不打算花许多时间进行这方面的介绍,因为有许多的资源可以利用,而我只想简要地加以概述。

从基本上讲,.NET 框架压缩版是 .NET 框架的一个精简版,它针对资源受限设备进行了优化,提供完整的 .NET 框架中可用的功能和类的子集。它提供了丰富的类库、以及自动内存管理和 CPU 独立性,从而大大简化了构建和支持移动应用程序的过程。有关 .NET 框架压缩版的更多信息,请查阅 .NET Compact Framework Developer Center

Visual Studio .NET 2003 是用于在 .NET 框架压缩版 1.0 中创建应用程序的集成开发环境 (IDE)。它同样也是用于在 .NET 框架中创建桌面和服务器应用程序的 IDE。这个 IDE 允许桌面开发人员利用现有的桌面技能来开发智能设备应用程序。它提供了对拖放式窗体设计、集成调试和简化的 Web 服务访问的集成支持。有关使用 Visual Studio .NET 2003 开发 .NET 框架压缩版应用程序的更多信息,请查阅 Smart Device Programmability for eMbedded Devices

Visual Studio .NET 2003 和 .NET 框架压缩版 1.0 可以用于大多数可用的智能设备,其中包括运行基于 Microsoft Windows Mobile 的 Pocket PC 2000、Pocket PC 2002、Pocket PC 2003、Pocket PC Phone Edition、Smartphone 2003 的设备、或者运行 Windows CE 4.1 或更高版本的任何设备。所有运行基于 Microsoft Windows Mobile 的 Pocket PC 2003 或 Smartphone 2003 的设备都附带有在设备 ROM 中预安装的 .NET 框架压缩版 1.0。前面提到的所有平台都需要安装 .NET 框架压缩版。

eMbedded Visual C++

虽然 .NET 框架压缩版 1.0 给开发人员带来了极高的生产效率,但有时开发人员还需要 C++ 的强大功能。C++ 仍然提供了对平台最直接的控制。C++ 提供了无与伦比的强大功能和非凡的控制能力。但不利的方面是,与使用 .NET 框架压缩版进行开发相比,C++ 需要的代码多得多。现代的移动应用程序开发常常需要将 .NET 框架压缩版和 C++ 结合使用。

一个已经产生了一些混淆的方面是 Microsoft eMbedded Visual C++ 3.0 和 Microsoft eMbedded Visual C++ 4.0 的可用性。每个版本都针对一组不同的平台。版本 3.0 用于所有基于 Microsoft Windows CE 3.0 的平台,其中包括 Pocket PC 2000、Pocket PC 2002 和 Smartphone 2002。而版本 4.0 则针对 Windows CE 4.x 平台,只是略有些限制。要针对 Pocket PC 2003 或 Smartphone 2003 进行开发,除了 eMbedded Visual C++ 4.0 产品之外,还需要安装 eMbedded Visual C++ 4.0 Service Pack 3。

因此,为目标平台选择合适的工具是一件简单的事情。eMbedded Visual C++ 3.0 和 4.0 可以在单台桌面计算机上很好地共存,使您能支持智能设备的整个系列。所有的 eMbedded Visual C++ 版本均可免费下载。

其他嵌入式工具

如果您只有使用 Visual Studio .NET 2003 和 .NET 框架压缩版 1.0 进行移动开发的经验,则您可能不会意识到 eMbedded Visual C++ 附带了许多开发工具,这些工具非常有用(即使您不使用 C++ 进行开发)。要使用这些工具,需要在目标平台上安装 eMbedded Visual C++ 的适当版本。安装完毕后,启动 eMbedded Visual C++,然后单击“Tools”菜单。该菜单列出了几种移动应用程序开发工具。我喜欢的一些开发工具有:

  • Remote Registry Editor:允许您查看和修改所附的智能设备的注册表。

  • Remote Spy++:允许您检查和查看智能设备上所有窗口的详细信息,以及监视和记录窗口消息。

  • Remote Process Viewer:允许您查看该设备上运行的所有应用程序,以及有关它们各自加载的 DLL 的信息。

虽然这些开发工具都是 eMbedded Visual C++ 的一部分,但它们对于 .NET 框架压缩版 1.0 开发人员来说也是有用的,并且这些工具中的大部分将包括在 Microsoft Visual Studio 2005 中。

SDK、服务包和模拟器

有许多不同的智能设备平台,并且它们都在迅猛发展。正在迅猛发展的不仅仅是平台,而且还包括工具。迅猛发展的工具和平台如此之多,因此只有核心开发工具是不够的。开发人员必须保持他们的开发环境最新,这意味着一直拥有最新的软件开发工具箱 (SDK)、服务包和模拟器。

针对基于 Windows Mobile 2003 Pocket PC Smartphone 的软件开发工具

针对基于 Windows Mobile 2003 的 Pocket PC 软件开发工具箱针对基于 Windows Mobile 2003的 Smartphones 软件开发工具箱,提供了使用 Visual Studio .NET 2003 和 eMbedded Visual C++ 4.0 分别开发针对 Pocket PC 2003 和 Smartphone 2003 的应用程序的必要工具(必须安装 eMbedded Visual C++ SP3)。这些 SDK 包括针对其各自平台的必要文档和模拟器。对于使用 eMbedded Visual C++ 4.0 的开发人员来说,这些 SDK 还包括了必要的头文件和库。

SDK 只需安装好就可以使用了。它们自动与 Visual Studio .NET 2003 和 eMbedded Visual C++ 4.0 集成,并且使用各自的模拟器来为构建和测试 Pocket PC 2003 和 Smartphone 2003 应用程序提供一切必要的工具。在 SDK 安装完成后,相关的平台就成为 Visual Studio .NET 2003 和 eMbedded Visual C++ 4.0 中的可用平台的一部分。

用于 Windows Mobile 2003 第二版的开发人员资源

Windows Mobile 2003 第二版是 Windows Mobile 软件平台的最新版本,并且会对 Pocket PC 和 Smartphone 产生影响。Windows Mobile 2003 第二版的重要性在于它添加了对更宽的屏幕分辨率选择的支持。

在 Windows Mobile 2003 第二版发布之前,所有基于 Windows Mobile 的设备的屏幕分辨率均为 96 点每英寸 (dpi),并且纵向的屏幕方向固定不变。这意味着所有的 Pocket PC 设备都固定为 240x320,而所有的 Smartphone 都固定为 176x220。在第二版中,添加了对 192 dpi Pocket PC 和 131 dpi Smartphone、以及 Pocket PC 的横向和直角的附加屏幕方向的支持。现在,在第二版下运行的 Pocket PC 应用程序的屏幕大小可以为 240x320、480x640、240x240 或 480x480,并且可以做纵向和横向旋转。除了现有的 176x220 之外,Smartphone 还添加了 240x320 的屏幕大小。基于第二版的 Smartphone 仍然只支持纵向屏幕方向。虽然目前基于 Windows Mobile 的设备都不支持动态更改 dpi 设置,但是有些 Windows Mobile 2003 第二版 Pocket PC 可以在运行的过程中更改屏幕方向。

支持更宽的屏幕分辨率和方向选择为 Windows Mobile 开发人员提供了大量机会,因为我们都不再固定于一种大小适合于所有的设备的情况之中。当然,这同时意味着,如果我们想要最有效地利用平台,我们的应用程序就还需要识别更多的屏幕。Microsoft 提供了一些重要的下载,可以帮助开发人员针对 Windows Mobile 2003 第二版构建识别屏幕方向和分辨率的应用程序。

.NET 框架压缩版 1.0 Service Pack 2

不管采用什么平台,使用当前发布的服务包都非常重要。然而,对于 .NET 框架压缩版,安装 .NET 框架压缩版 1.0 Service Pack 2 是必要的。安装这个服务包能够显著改善 .NET 框架压缩版开发人员与用户的体验。

.NET 框架压缩版 1.0 的第一个服务包是在 2003 年 8 月底发布的。该服务包主要用于提供 bug(缺陷)修补程序,其中包括非常重要的对 ControlCollection 类(它极大地优化了复杂窗体的加载时间)的修补。因为在第一个服务包中提供了主要的 bug 修补程序,所以 2003 年 10 月发布的 Service Pack 2 能够集中于提供一些新的功能和有针对性的性能改进。

这些附加功能中的大部分都集中于解决键盘和用户界面问题。我喜欢的一些功能包括:

  • 添加了对控件之间跳转的支持,而不需要用户使用指示笔或鼠标来选择每个控件。

  • 添加了对所有的控件而不只是选择部分的 KeyUp、KeyDown 和 KeyPress 事件的支持。

  • 现在用户只需按一下键盘快捷键,Pocket PC 应用程序就可以显示上下文菜单。

  • 为了使应用程序更加美观,大部分控件现在都支持设置 ForeColor 和 BackColor 属性。

除了这些新功能之外,该服务包还对 DataSet 类、XmlReader 类和资源加载进行了重要的性能改进。当然,它同时提供了一些 bug 修补程序。有关的下载和详细信息,参见 .NET Compact Framework 1.0 SP2

.NET 框架压缩版 1.0 Service Pack 2 已经安装在所有基于 Windows Mobile 2003 第二版的设备的 ROM 中。

eMbedded Visual C++ 4.0 Service Pack 3

我在“eMbedded Visual C++ 4.0”部分的结尾处提到了 eMbedded Visual C++ 4.0 Service Pack 3,但是为了强调它的重要性,这里我想再提一提。简单地说,如果您要构建针对运行适用于 Pocket PC 和 Smartphone 的 Windows Mobile 2003 或 Windows Mobile 2003 第二版软件的任何设备的 C++ 应用程序,那么除了 eMbedded Visual C++ 4.0 之外,还需要安装这个服务包。

数据管理

随着移动应用程序的规模与复杂性的增加,声音数据管理策略变得更加重要。对于面向数据的应用程序,简单的平面文件已经不够了。这些智能设备应用程序需要关系数据库的强大功能和可靠性。

SQL Server 2000 Windows CE (SQL Server CE)

Microsoft SQL Server 2000 Windows CE 版 (SQL Server CE) 是 SQL Server 2000 数据库为在智能设备上使用而优化的一个版本。它支持许多开发人员期望数据库能够提供的工具,其中包括丰富的 SQL 语言子集、参数化查询和对事务的支持。在智能设备上,这种数据库是完全自包含的。

对于需要关系数据库的可伸缩性和可靠性的智能设备应用程序,SQL Server CE 就是很好的选择。如果您要了解有关 SQL Server CE 的更多信息,请查阅 Working with SQL Server CE Databases。有关管理 SQL Server CE 和可伸缩性方面的讨论,请参见上个月的专栏

SQL Server CE 服务器工具

面向数据的智能设备应用程序很少是独立的。它们几乎总需要访问企业数据。在通常情况下,这些应用程序必须从中心数据存储中检索数据,然后根据在本地智能设备上已经进行的任何修改来更新数据存储。虽然有可能手动开发这些数据的同步解决方案,但是 SQL Server CE Server Tools 为同步 SQL Server CE 和基于服务器的 SQL Server 2000 之间的数据提供了两个预构建的解决方案:远程数据访问 (RDA) 与合并复制。这两个工具都是防火墙友好的,并且由于它们使用 HTTP 作为数据传输协议,所以能够与松散连接的设备一起很好地工作。

RDA 是一个轻量级工具,它支持从运行 SQL Server 2000 的计算机轮询数据,并将数据存储在本地的 SQL Server CE 数据库中。RDA 具有自动跟踪变化的功能,并且能够将记录的变化返回到运行 SQL Server 2000 的计算机。合并复制是一个略高一些的重量级的解决方案。与只跟踪智能设备上的变化的 RDA 不同,合并复制同时跟踪提供双向同步的智能设备和服务器上的变化,另外还检测并解决这两个系统之间的冲突。当然,天下没有免费的午餐;合并复制的双向工具明显比 RDA 耗费更多的服务器资源。有关 RDA 和合并复制之间的选择的更多信息,请参见 How to:Develop an Efficient Architecture based on SQL Server CE Replication Requirements

其他工具和下载

我想以一些工具和下载来结束本月的话题,虽然它们不是正式的产品,但也是移动开发人员工具区的一个非常重要的部分。

Windows Mobile Developer PowerToys

Windows Mobile Developer PowerToys 提供一组实用程序来帮助简化日常移动应用程序开发所涉及的许多常见任务。自从它们于 2003 年 9 月发布以来,我就发现它们是必不可少的,有时还会想以前没有它们我是怎么度过的。我喜欢的一些 PowerToy 包括:

  • Emulator Microsoft ActiveSync Connection Tool:闻如其名,它允许 Visual Studio .NET 2003 Emulator 以来宾合作关系的形式连接到 ActiveSync。

  • ActiveSync Remote Display:作为会议主持人,这也许是我最喜欢的 PowerToy。它提供一个桌面窗口来显示所连接的设备的屏幕。除了显示设备屏幕之外,它还允许您通过桌面鼠标和键盘来与所连接的设备交互并向其输入数据。

  • CECopy:允许您通过桌面命令窗口在桌面和所附设备之间复制文件。

  • RAPI Start:允许您您通过桌面命令窗口启动所附设备上的应用程序并执行命令。

有一点需要指出的是,Windows Mobile Developer PowerToys 是不受支持的。不过,我发现它们非常有用,并且使用起来相当简单。

OpenNETCF.org

OpenNETCF.org 是一个共享源代码项目,它提供了大量的 API 包装器、扩展和控件,极大地方便了 .NET 框架压缩版 1.0 的开发人员。它们是由第三方开发社区提供的,并且不受 Microsoft 支持。OpenNETCF 所公开的一些功能可能会在未来的 Windows Mobile 平台上公开。这些类提供了对在 .NET 框架压缩版 1.0 中不包含的许多平台功能和类的访问。对于 .NET 框架压缩版开发人员,OpenNETCF.org 也许是除 .NET 框架压缩版 1.0 类库本身之外最重要的类库了。如果您对 .NET 框架压缩版开发很重视,您就应该去看看 OpenNETCF.org。

.NET 框架压缩版 1.0 补充文档

最后(但绝非最不重要的)是 .NET 框架压缩版补充文档。Visual Studio .NET 2003 和 Microsoft MSDN Online 提供了在 .NET 框架压缩版 1.0 上构建应用程序所需的大部分文档,但这里有其他两个我发现非常有用的文档下载。

第一个是 .NET Compact Framework API 文档,它是一个已编译的 HTML 文件 (.chm),包含 .NET 框架压缩版和完整的 .NET 框架中包括的所有类的完整列表。我喜欢这个下载,因为它能够轻松地比较每个构架中包括哪些类和方法。Display Options 功能允许您选择显示只在 .NET 框架压缩版中才有的类和方法、或只在 .NET 框架完整版中才有的类和方法,还是显示二者中都有的类和方法。我发现这个功能非常有用,特别是在开发必须在两个框架之间进行移植的应用程序代码时。

另一个重要的补充文档是 Microsoft.WindowCE.Forms 命名空间文档。.NET 框架压缩版 1.0 引入了两个 Windows 窗体类,它们不是完整的 .NET 框架的一部分:InputPanel 和 MessageWindow。InputPanel 为管理 Pocket PC Soft Input Panel (SIP) 提供支持。MessageWindow 为窗口消息的自定义处理提供支持。这两者都是 .NET 框架压缩版开发的重要部分,但是在 Visual Studio .NET 2003 和 MSDN Online 中的文档范围却非常有限。此下载提供了有关这两个类的更详细的信息。

小结

前面您所看到的就是我列出的基本智能设备开发人员工具。我意识到我并没有涵盖每个可用的移动开发人员工具和实用程序,但这些都是我发现在作为一名移动开发人员的日常工作中非常有用的工具我希望它们对您也同样有用。

这就是本月的话题。我期待下个月再与您相见。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639172/viewspace-365989/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/12639172/viewspace-365989/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值