生成访问 SharePoint 的 Windows Phone 应用
SharePoint 为开发者提供了令人振奋的机会,可构建用户移动设备可搭载的移动应用,这些应用极具互动性和吸引力,能够随时随地供用户使用。 你可以将 Windows Phone 8 和 Windows Phone 7 应用程序与内部部署的 SharePoint 服务和应用程序结合使用,或者与在云中运行的远程 SharePoint 服务和应用程序(如使用 SharePoint Online 的服务和应用)结合使用,以创建功能强大的应用程序,将功能扩展到传统台式机或笔记本电脑以外的设备中,并进入一个真正便携且更容易访问的环境中。
SharePoint 提供的新移动性功能是在现有 Microsoft 工具和技术(如 SharePoint、Windows Phone、Visual Studio 和 Silverlight)的基础上构建的。 熟悉这些技术及其相关工具的开发人员将无需过多的曲线学习,就能够为 Windows Phone 创建由 SharePoint 提供支持的移动应用程序。 在本节中,我们将探讨你可以为 Windows Phone 8 和 Windows Phone 7 构建的一些基于 SharePoint 类型的移动应用,以及自定义这些应用程序的最常见方式。 SharePoint 为开发者提供了框架和工具(包括 Visual Studio 2010 项目模板),以创建可与本地 SharePoint 安装中的以及通过 SharePoint Online 与云中的 SharePoint 数据进行交互的移动解决方案。 图 1 显示了一个简单的列表应用程序在 Windows Phone 上的外观。
图 1. Windows Phone 应用程序中的 SharePoint 列表项
创建移动应用需要哪些技能?
本节中,我们假设您熟悉 SharePoint, .NET Framework、Visual Studio 开发系统和 Visual C#。 拥有一些使用 Silverlight 开发 Windows Phone 8 或 Windows Phone 7 应用程序的经验也是不错的,熟悉 Windows Phone 的 XAML、StackPanel 和透视控件,以及了解逻辑删除和 Silverlight 数据绑定等概念也很有帮助。 如果您刚刚接触使用 Silverlight 开发 Windows Phone 应用程序,我们建议您查看以下资源。
- 开发 Windows Phone 应用程序(从开始到完成)
- Windows Phone 的用户界面
- 快速入门:使用 XAML 为 Windows Phone 创建用户界面
- Windows Phone 的 Pivot 控件体系结构
使用 SharePoint 的移动应用开发概览
您可以使用 SharePoint 生成大量不同的移动应用程序。 本节描述了 SharePoint 版本中使移动应用程序开发对开发人员而言变得简单的新增和更改的内容。
Windows Phone SharePoint 应用程序模板
这是你可以构建的最简单的、可将常规列表置于手机中的移动应用类型。 SharePoint 提供了 Visual Studio 模板,让你能够快速又轻松地为 Windows Phone 创建 SharePoint 列表应用程序。 例如,你可以构建“待办项列表”类型的 Windows Phone 应用程序,将你的任务列表从 SharePoint 植入 Windows Phone,并让你可以使用手机随时随地更新任务状态。 另一个示例是,让销售人员可在手机上查看 SharePoint 中库存列表的产品目录。
安装 Windows Phone SharePoint SDK,可让你在 Visual Studio 2010 或 Visual Studio 2010 Express for Windows Phone 中使用两个 Windows Phone SharePoint 应用程序模板(请参阅如何:设置开发 SharePoint 移动应用的环境)。
使用 Windows Phone SharePoint 列表应用程序模板,你可以按照向导的步骤创建可访问和处理 SharePoint 列表中数据的功能性 Windows Phone 应用。
SharePoint 中新增和增强的移动性对象模型
SharePoint 将许多新类添加到了服务器和客户端对象模型,以实现上文介绍的 SharePoint 移动性应用场景。
为了启用位置感知应用程序,提供了一个新的本机字段类型类 SPFieldGeoLocation 以及许多用来构造位置字段的值并呈现它们的关联类。 这些类也可在 Silverlight 的 SharePoint 客户端对象模型中调用。 此外,新的字段类型还具有添加到标准 SharePoint fldtypes.xml 文件中的定义,以及用于在“显示”、“编辑”和“新建”窗体上呈现字段的新用户控件。 有关概述,请参阅在 SharePoint 中集成位置和地图功能。
为了对 Windows Phone 用户启用 SharePoint 身份验证,客户端对象模型包括一个新的 Authenticator 类和多个相关联的类。 有关概览,请参阅 SharePoint 移动客户端身份验证对象模型概述。
为了对 Windows Phone 用户启用 SharePoint 场上的事件的自动通知功能,服务器对象模型包括多个新类,每个新类还可以从客户端对象模型中调用。 这些类包括的方法允许电话应用程序向 SharePoint 服务器应用程序注册以接收有关指定事件类型的通知。 还有一些服务器应用可用于向已注册的订阅者发送通知的方法。 有关概述,请参阅创建 Windows Phone SharePoint 列表应用程序以接收推送通知。
使用 SharePoint,您不会受限于 Windows Phone 8 和 Windows Phone 7 的移动应用程序开发。 使用 SharePoint 提供的 JavaScript 编程接口和新的代表性状态传输 (REST) 编程接口,您可以为非 Windows Phone 移动设备创建应用程序;您可以与 SharePoint 站点进行交互(方法是使用作为浏览器中的脚本执行的 JavaScript 或使用任何支持标准 REST 功能的技术远程进行)。 下一节将提供 REST 和 JavaScript 编程接口的概览。
ECMAScript (JavaScript, JScript) 对象模型体系结构
SharePoint Foundation 2010 引入了客户端对象模型,它使开发人员能够使用 .NET Framework、Silverlight 或 JavaScript 等网站编程技术执行与 SharePoint 的远程通信。
在 SharePoint Foundation 2010 中,客户端对象模型提供的 API 使开发人员能够根据在浏览器中执行的脚本、在 .NET Framework 托管应用程序中执行的代码(基于 .NET Framework 3.5 或更高版本)或在 Silverlight 2.0 应用程序中执行的代码,与 SharePoint 网站进行交互。 构成客户端对象模型的代理程序 .js 和托管的 .dll 文件基于 client.svc Web 服务构建,可处理有效的批处理、请求序列化和回复分析。 图 2 显示了 SharePoint 客户端对象模型体系结构的高级视图。
图 2. SharePoint 客户端对象模型体系结构
若要了解如何对 SharePoint 数据使用 JavaScript 客户端对象模型,请观看 ECMAScript 客户端对象模型视频。
SharePoint 中的 REST 端点
若要使用内置于 SharePoint 的 REST 功能,您可以使用与所需客户端对象模型 API 相对应的开放式数据协议 (OData) 标准构建 RESTful HTTP 请求。 Client.svc Web 服务以 Atom 或 JavaScript 对象表示法 (JSON) 格式处理该 HTTP 请求,并提供适当的响应。 然后,客户端应用程序必须分析该响应。 图 3 显示了 SharePoint REST 体系结构的高级视图。
图 3. SharePoint REST 体系结构
目前,SharePoint 中的 REST 服务为只读。 也就是说,只有表示 HTTP GET 操作的 REST 端点可用。
默认情况下,根据 OData 规范,SharePoint REST 服务响应使用 Atom 协议进行格式化。 此外,REST 服务支持使开发人员能够指定以 JSON 格式返回的响应的 HTTP Accept 标头。 若要详细了解 SharePoint 中的 REST 服务,请参阅 在 SharePoint REST 请求中使用 OData 查询操作。
SharePoint REST 服务支持以下 OData 查询运算符:
- 筛选
- Take
- Expand
开始开发 SharePoint 的移动应用
以下操作方法和概述将深入探讨开始移动应用开发所需的特定信息:
- 如何:设置用于为 SharePoint 开发移动应用程序的环境
- Visual Studio 中的 Windows Phone SharePoint 应用程序模板概述
- "Windows Phone SharePoint 列表应用程序"模板的体系结构
- 如何:创建 Windows Phone SharePoint 列表应用程序
- 如何:在 Windows Phone 上存储和检索 SharePoint 列表项
- 如何:在针对 Windows Phone 的 SharePoint 应用程序中实现业务逻辑和数据验证
- 如何:为 Windows Phone 应用程序支持和转换 SharePoint 字段类型
- 如何:为 Windows Phone 应用程序自定义列表项查询和筛选数据
- 如何:自定义针对 Windows Phone 的 SharePoint 列表应用程序的用户界面
- 如何:在 Windows Phone 应用程序中使用多个 SharePoint 列表
- 如何:在针对 Windows Phone 的 SharePoint 应用程序中配置和使用推送通知
- 集成 SharePoint 中的位置和映射功能
- 如何:在 SharePoint 中创建包含外部数据源中的数据的移动应用程序
- 如何:将地图与 Windows Phone 应用程序和 SharePoint 列表集成
- 如何:使用导航和事件日志记录 REST 界面构建搜索驱动移动应用程序