移动平台上的 Silverlight——最新进展

  • Abel Avram
  • 朱永光

2010 年 4 月 3 日

话题:.NET移动Android语言 & 开发架构

微软似乎有意把 Silverlight 打造为一个针对移动设备的跨平台 Web 应用程序框架。Silverlight 已经出现在 Windows Phone 7 和 Symbina^1 上,似乎也会移植到 Android 和 iPhone 上。

Silverlight for Symbian^1

微软在 MIX 2010 期间宣布 Silverlight 已经支持 Symbian。这个浏览器插件将运行在Symbian^1,其基于 Symbian OS 和S60 第五版平台构建,S60 第五版则又构建于 Symbian OS 9.4 之上,所以 Silverlight 并未支持开源的 Symbian^3。Silverlight 只能安装在 Nokia 有限的几款手机上:5800 XpressMusic、N97 和 N97 mini,且只能在 Nokia 默认的 Web 浏览器中运行。

Symbian^1 上的 Silverlight 运行在.NET Compact Framework之上,通过硬件抽象环境的方式来在 Symbian 上运行可访问有限资源的托管应用程序。可用的开发工具包括:

Silverlight for Windows Phone 7

据某些泄露消息【译者注:此消息已经被证实】,在 Windows Phone 7 上存在两种主要的开发平台:具有 Silverlight 4 某些特性的 Silverlight 3 平台和 XNA 平台,不过微软计划让 Silverlight 成为 Windows Phone 7 的基础平台,正如微软的资深副总裁 S. Somasegar所说:“Windows Phone 7 开发的核心即是 Silverlight。”

这些开发工具包括:

  • Visual Studio 2010 Express for Windows Phone CTP
  • Windows Phone Emulator CTP——与 Visual Studio 集成
  • Silverlight for Windows Phone CTP
  • XNA 4.0 Game Studio CTP——可为手机、Xbox 和 Windows 桌面开发游戏。

还有一个用于 Windows Phone 7 的开发工具是Expression Blend

Silverlight for Android

对于一个重要的播放器而言,Silverlight 需要运行在所有主流操作系统和所有主流移动平台上。有关 Silverlight for Android 的消息,还没有很明确的细节,不过 Google 的开源平台不久应该可以受到支持。在发布 Android 平台上的Tag应用程序后,业界就在猜测微软的下一个 Android 应用程序是否会是 Silverlight。

以此同时,Miguel de Icaza 宣布了创建 MonoDroid 的计划,即是 Mono for Android,其“将包括完整的 Java API 移植接口,可以被基于 JIT 编译的运行时引擎访问”。他们创建这个平台的思想和 MonoTouch(iPhone)类似,所以开发人员能跨移动平台复用基础代码,只需移植 UI 代码。

Moonlight 已经能在 Chrome 上运行,所以 MonoDroid 很可能在不久的将来就会发布。

Silverlight for iPhone

微软也未明确表示针对苹果手机上的 Silverlight 相关计划,不过他们已经获得苹果对于移植 Silverlight 到 iPhone 的认可。微软曾经在 PDC 2009 上演示了iPhone 上的 Silverlight 流媒体播放。微软的用户体验平台经理 Brian Goldfarb,解释了背后的缘由:

iPhone 是一种特殊的情况。我们和客户交谈过……他们说,“瞧,我们只需要在那里面访问我们的内容,它是一种类似广播那样的主要媒体空间,我们想在 iPhone 中运行它”。他们对此提出了一种解决方案:如果你在网络上冲浪,那么访问 YouTube,并点击“播放”,就能观看视频;因为他们已经在 PC 上创建了这种能够播放媒体的环境,且已经安逸于这样的操作方式了。

看来,微软要通过覆盖所有主流操作系统和移动平台,来坚定不移地把 Silverlight 打造为主要的 Web 应用程序框架。我们拭目以待,他们要如何同 Adobe Flash 和 HTML5 进行竞争。

查看英文原文:Silverlight for Mobile Platforms – the Current Status

.NET移动Android语言 & 开发架构