可将 ActionScript 字节码转换为 HTML 5 的 Greystripe:Flash 广告有望出现在 iPhone/iPad 上

  • Dio Synodinos
  • 张龙

2010 年 6 月 21 日

话题:架构HTML5语言 & 开发

Greystripe宣布他们将与 Adobe 合作来为 Android、iPhone 和其他的移动 Web 平台提供富媒体、交互式的广告解决方案。其技术可以将 Flash 广告转换为 HTML 5,目标是 iPhone 等不支持 Flash 插件的移动设备。

公司的此次声明刚好在 Apple 宣布其 iAds 之后,但却采取了完全不同的方式

我们的广告解决方案可与 Apple 最近宣布的 iAds 相提并论,但与 iAds 不同的是,该方案需要使用 Adobe® Flash®的授权工具,价位也非常低,既有可展开的 banner 条形式,也有整屏形式。由于 Flash 是开发富媒体数字广告的标准,品牌广告商和数字媒体可以通过这些解决方案实现对广告开发的完全控制,通过保留现有的工作流并且支持 HTML 5 来降低成本,这样广告商就可以触及到所有主流的桌面与移动平台,降低了广告概念诞生与发布之间的时间延迟。

由于关于该平台的信息较少,因此 InfoQ 就产品的技术方面与 Greystripe 的代表进行了一次交流:

InfoQ:能否向那些想要使用该平台的开发者介绍一下开发流程?这是设计工作还是开发工作呢?

Greystripe:我们认为广告应由富于创造力的设计人员而非开发人员完成。在我们的工作流中,富于创造力的媒体机构按照他们习惯的方式创建 Flash 广告。平台会在必要的情况下转换 Flash 文件(swf 格式)以便在设备上呈现出来。

InfoQ:你会在某一时刻转换 ActionScript 和 JavaScript 么?是一条命令接着一条命令地转还是先构建出完整的抽象语法树并对其优化呢,就像 GWT 将 Java 转换为 JavaScript 那样?

Greystripe:富有创造力的媒体机构将二机制的 swf 文件提供给我们,而不是 fla 源文件。我们的转换层操纵 ActionScript 字节码,而不是 ActionScript 源代码,因此它并不会使用 AST。我们会重新装配 ActionScript 字节码并将其重新编译为 Javascript 源代码。比如说,低层分支的 Actionscript 字节码序列会被恰当地编译为 Javascript 的 if/while/for 源代码语句。

InfoQ:你们的平台只能用于 Safari 么,会为所有浏览器提供兼容层么?

Greystripe:我们目前的计划是支持移动 Safari,因为只有它没有(或者说近期不会)提供原生的 Flash 支持。我们会在未来考虑其他浏览器。

InfoQ:那有什么限制么?

Greystripe:对 Flash 的支持有些限制,但根据我们过去两年的经验来看,这些支持涵盖了大多数广告内容。从高层次来看,这种限制类似于 Flash Lite 和完整的 Flash 之间的区别。

InfoQ:如何处理视频、音频等内容呢?

Greystripe:在预处理阶段抽取出音频和视频,然后使用原生的 HTML 5 媒体控件进行渲染。

感兴趣的读者可以在InfoQ上找到关于HTML 5Flash的更多信息。

查看英文原文:Greystripe Transcodes ActionScript Bytecode to HTML 5, making Flash Ads Available on the iPhone/iPad

架构HTML5语言 & 开发