应用程序开发概述(设备)

更新:2007 年 11 月

开发智能设备应用程序与开发桌面应用程序并无显著差异。本主题概述了开发智能设备应用程序的主要步骤,并指出开发桌面应用程序与开发智能设备应用程序之间的一些差异。

  • 设计注意事项

  • 使用设备和仿真程序

  • 生成应用程序

  • 安全注意事项

  • 打包和部署应用程序

  • 设备与桌面

设计注意事项

智能设备解决方案和 Windows CE

若要更好地了解 Windows CE、Pocket PC、Smartphone 和 Windows Mobile™ 软件之间的关系,请参见“Windows Mobile Developer Center”(Windows 移动开发人员中心)中的 Learn Windows Mobile(了解 Windows Mobile)。有关更多信息,请参见智能设备开发中的设计注意事项

版本兼容性

若要确定在开发设备应用程序时要一起使用哪些版本的工具和技术,请参见“Introduction to Development Tools for Windows Mobile-based Pocket PCs and Smartphones”(用于基于 Windows Mobile 的 Pocket PC 和 Smartphone 的开发工具简介)。托管项目必须面向 .NET Compact Framework 2.0 或 3.5 版。

设计准则

设备应用程序的设计决定着用户完成任务的难易程度、速度和效率。通过对应用程序进行优化,使其充分利用不同设备的功能,您可以创建可用性、一致性、响应能力和易用性更强的应用程序,使之用起来得心应手。有关特定界面功能的详细设计准则,请参见设备的软件开发工具包 (SDK) 以及我们自己的智能设备部分。

使用智能设备和仿真程序

设备仿真程序

设备仿真程序是专为 Visual Studio 设备项目设计的。它运行为 ARM 指令集编译的应用程序,并作为用户模式进程运行。Visual Studio 提供直接内存访问 (DMA) 传输以便与仿真程序进行通信。DMA 传输胜过传统 TCP/IP 传输,该类型的传输速度快并且不依赖于网络连接或其他外部因素,并能够提供确定的连接和断开连接。

Visual Studio 包含 Windows Mobile 5.0 和 Windows Mobile 2003 的仿真程序映像。如果您安装附加的 SDK(例如 Windows Mobile 6),则会安装附加的仿真程序。

若要打开仿真程序,请在“工具”菜单上单击“连接到设备”,选择要打开的仿真程序,再单击“连接”。

连接到设备

Visual Studio 使用核心连接框架在开发计算机和目标设备之间建立安全可靠的连接。Visual Studio 使用该连接在设备或仿真程序上部署文件和调试应用程序。有关更多信息,请参见将智能设备连接到开发计算机上

生成、调试和测试设备应用程序

托管应用程序

可以使用 Visual Studio 的 Visual C# 或 Visual Basic 编程语言来编写面向 .NET Compact Framework 2.0 或 3.5 版的应用程序。智能设备应用程序引用 .NET Compact Framework 中的程序集,并由 .NET Compact Framework 公共语言运行库在设备上执行。

为了帮助您进行开发,Visual Studio 提供了下列功能:

本机 C++ 应用程序

可以使用 Visual Studio 的 Visual C++ 编程语言来编写以本机方式在设备上运行的智能设备应用程序。有关更多信息,请参见使用 Visual C++ 进行设备编程

安全性

Windows Mobile 应用程序安全性

智能设备开发人员必须考虑不同安全配置如何影响其应用程序的执行。如果您的应用程序未签名或使用用户设备上不存在的证书签名,那么它可能无法运行。有关更多信息,请参见设备项目中的安全性

其他安全注意事项

设备应用程序的远程连接方面造成了其他安全性问题。有关更多信息,请参见.NET Compact Framework 中的安全本机代码和 .NET Framework 代码的安全性

打包应用程序以进行部署

Visual Studio 提供了一些工具,用于将智能设备应用程序打包到一个 CAB 文件中或一个桌面 MSI 安装程序中。有关更多信息,请参见打包设备解决方案以便进行部署

设备与桌面

开发设备应用程序与开发桌面应用程序所使用的 Visual Studio 集成开发环境 (IDE) 相同,但在面向具体设备时存在某些差异。

  • Visual Studio IDE 提供了一些额外的工具,用于连接到设备以及在设备上进行调试。

  • 创建项目时,除了选择项目的类型和模板以外,还必须选择用来运行和调试应用程序的设备。此设备可以是连接到开发计算机的物理设备、网络上的设备或运行在开发计算机上的设备仿真程序。

  • 类的数量和成员都与开发桌面应用程序时使用的有所不同。在使用 .NET Compact Framework 的托管项目中,可用于设备的类更少,且不同平台上的类补集通常不同。本机项目也是如此,在这些项目中,只有 Windows API、MFC 类或 ATL 组件的子集可用。您可以通过查看文档、使用 IntelliSense 或在项目处于活动状态时使用 Visual Studio“对象浏览器”来确定哪些类可用。

  • 与桌面应用程序一样,可以使用平台调用访问本机代码。.NET Compact Framework 对 COM 互操作提供有限的支持。它不支持在托管代码中创建 COM 对象或与 ActiveX 控件进行互操作。

  • 某些语言项可能不同;例如,不支持某些用于桌面开发的 Visual Basic 关键字。

  • Visual Studio 文档中为桌面项目提供的某些代码段和示例可能会在设备项目中产生生成错误。

  • 设备开发存在一些桌面开发不需要考虑的设计注意事项,例如设备的格式参数、电源使用、内存限制及其他细节。

其他资源

有关更多信息,请参见“Mobile Developer Center”(移动开发人员中心)

请参见

其他资源

智能设备项目入门