65.9K
CodeProject 正在变化。 阅读更多。
Home

将 HTML 内容推送到 BlackBberry

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.36/5 (8投票s)

2004年12月7日

CPOL

2分钟阅读

viewsIcon

93060

downloadIcon

162

如何使用 MDS 将 HTML 内容推送到 BlackBberry 手持设备。

Blackberry showing pushed HTML content

引言

Blackberry(由 Research In Motion - RIM 开发)已经成为许多企业网络(包括 IT、金融和政府网络)的关键组成部分。 它们始终连接的特性和丰富的内容交付服务(通过 Blackberry Enterprise Server 和 Mobile Data Service)使其非常吸引开发者开发应用程序。 开箱即用,您可以很少的工作量将 HTML 内容交付给它们。 其基于 Java 的操作系统允许开发人员创建实时传递数据的应用程序,并可以使用设备直观的用户界面和完整的 QWERTY 键盘进行交互。

我将专注于使用 HTML 浏览器通道将内容传递到设备的最简单方法。 我的下一篇文章可能包括一个手持设备的自定义应用程序。

为了使用此代码,您需要

  1. Blackberry Enterprise Server 4.0 或更高版本
  2. 运行 4.0 或更高版本的 Blackberry 手持设备
  3. 已安装 IPPP 服务手册(通过 Enterprise Activation 自动安装)
  4. 运行我创建的 WebService 的 IIS 5 或更高版本

工作原理

移动数据服务完全基于 HTTP。 您使用一些查询参数建立到 Blackberry Enterprise Server 的 HTTP 连接(默认端口是 8300)和包含您的数据的 POST。 手持设备的浏览器在端口 7874 上监听传入的推送。 自定义 Blackberry HTTP 标头指定有关内容以及如何显示内容的信息(包括已读和未读图标、标题等)。 为了简单起见,我将让手持设备使用其默认图标。

使用代码

我决定将此实现为 WebService,以便可以从其他内部应用程序轻松访问。 代码非常简单。 有一个 WebService 方法和一个受保护的方法,该方法处理实际创建 HTTP 请求并将其发送到 MDS 服务器。 有关 MDS 服务器的配置信息保存在 web.config 中,可以使用内置的 ConfigurationSettings.AppSettings 集合访问。

WebService 方法具有以下签名

public virtual void PushToBrowser(string[] recipients, 
string channelTitle,
string channelName,
string baseLocation,
string message)

要使用,请创建一个新应用程序,向其添加一个 Web 引用(我将其称为 BesUtils)。 下面的代码说明了如何将简单的 HTML 文档推送到手持设备

BesUtils.MdsPusher pusher = new BesUtils.MdsPusher();

string[] recip = {"steven@mbccs.com"};

try
{ 
    pusher.PushToBrowser(recip, "Hello World", Guid.NewGuid().ToString(), 
"", "<html><head></head><body>Hello World.</body></html>"); } catch(Exception ex) { Console.Write(ex.ToString()); }

本文顶部的图片说明了将新消息推送到手持设备时出现的图标和文本。 您可以单击该图标以打开浏览器,它会将您直接带到您推送下来的文档。

关注点

如果您希望手持设备更新同一个频道,则需要保持 channelName 常量,否则每次推送到手持设备时都会创建一个新频道。

历史

  • 2004 年 12 月 7 日 - 发布文章的第一个版本,
© . All rights reserved.