初探追信·魔盒及追信开放平台

  • 贾国清

2012 年 7 月 17 日

话题:移动HTML5语言 & 开发

随着移动终端的发展,移动 App 也呈海量增长的形势,对于那些不具备开发背景却又渴望有着属于自己移动 App 的人来说,应用生成平台无疑成了首要之选,本次访谈找到了追信·魔盒,其产品主要基于追信开放平台,是以 PASS+App 相结合的移动应用快速生成系统。本篇文章主要从产品和技术层面对追信进行初步了解,后续会对其技术背景进行深入。

InfoQ: 请先做下自我介绍,目前主要在负责哪方面的工作?

仲仓戟:上海拜般网络联合创始人,技术总监,10 多年有线互联网和无线互联网产品、运营和开发经验。当前主要负责追信平台的产品和研发。

InfoQ:在抓取网页信息时,涉及到哪些关键点,追信是如何实现的?

仲仓戟:追信平台采用中间代理服务器和协议转换的机制,将有线互联网的内容转换成统一的追信 API 接口,适合各种移动平台和各种 Widget 插件平台的调用。在对第三方网页抓取解析时通过 XPATH 和正则表达式结合的模式对页面进行关键部分解析,最终导出统一的 XML/JSON 格式供客户端使用。

InfoQ:如何做到内容和应用版本实时更新?

仲仓戟:追信系统内置缓存机制,可在一定时间缓存第三方的内容,对于列表内容通常保持 10 分钟缓存,避免对第三方内容过度抓取。而客户端的更新采用统一更新机制,一旦软件开发制作者在平台生成了软件,能够跟随追信主客户端版本的进行更新,例如追信 iOS 版本核心是 2.3.0 更新的版本,当核心代码升级到了 2.4.0,所有老版本的 iOS 软件都能在线随时更新为最新的版本并分发。

InfoQ:目前提供了哪些 API,在与开放平台合作时,主要关注平台的哪些方面?

仲仓戟:追信针对纯开发者提供 PhoneGap 模式、二次开发接口、WebApp 壳模式以及客户端开放 API,分别对应 WEB 前端开发者、WEB 后端开发者、WAP 站长、移动开发者。能够适合各种开发者,适合各种开发环境。追信的二次开发接口支持 C#、PHP、JSP、Python。追信的客户端开发 API 支持 TXT/JSON/XML 输出。追信和其他第三方开放平台逐步进行对接,例如淘宝 TOP、新浪微博等等。

我们选择第三方开放平台的关注点在于该平台的内容是否能在追信平台形成模块化,可以让追信的软件制作者和开发者可以快速将某个功能作为软件的一个功能点。例如可以将某个人的微博做成软件中的一个频道。

InfoQ:请谈下不同操作系统的客户端同步生成技术,是如何实现的?

仲仓戟:追信支持 18 个系统的客户端同时生成。Android 手机、Windows Phone 7、iOS(兼容 iPhone 和 iPad)、Symbian V3、Symbian V5、黑莓 4.5、黑莓 5.0、黑莓 6.0、Android 平板、Windows Mobile(5/6/6.5)、KJAVA、Nokia Widget、HTML5(WebApp)、WAP(WAP1.2、2.0 自适配)、Chrome 浏览器插件、FireFox 浏览器插件、遨游浏览器插件。

这么多系统的覆盖得益于追信灵活的 API 接口。追信实现了所有平台的原生程序自动编译能力,自动替换程序资源、替换关键代码、命令行编译。可以在 3 分钟内生成所有版本。

InfoQ:在 HTML5 方面有哪些应用?

仲仓戟:追信魔盒从去年开始采用 HTML5 模式实现软件的个性化,用户在线通过模块化配置实现更为丰富的首页图文混排的效果,无需编码即可实现。而从 2012 年中开始支持PhoneGap模式和 WebApp 壳模式,可以将纯 HTML5 应用嵌入到追信魔盒客户端中,并可以一行代码调用追信魔盒原生的界面。追信魔盒也关注jQueryMobileSenchaTouch框架等 HTML5 框架,通过http://open.zhui.cn不断发布自行翻译或原创的与这些框架相关的文章。当前追信魔盒有发布测试用的 HTML5 游戏、企业 HTML5 网站应用等,已经证明在追信魔盒平台能够很好地承载纯 HTML5 应用。当然,追信魔盒很早就已经给每个 APP 应用自动配置了一个 HTML5 版本的网站,换句话说追信魔盒事实上已经有近 4 万个多 HTML5 网站的托管了。(例如:http://s1.zhui.cn/i/

InfoQ:最近微软发布了 WP8,这是否意味着追信会同时支持 WP7 和 WP8,由于是不通的系统内核,在实现上会有哪些挑战?

仲仓戟:追信魔盒很早就开始在 WP7 上的投入,和 7.5 芒果系统几乎同时发布。现在平台上已经编译了 3 万多款 WP7 应用,累计几十万用户。追信内部已经开发了原生版本的 WINDOWS 8 的客户端版本(当然是兼容 PC 和平板),所以在年底 WindowsPhone8 版本发布时肯定会同时发布对应的版本。追信所有客户端版本开发都是用不同平台各自特有的控件和布局,针对新的系统开发会使用具备其特点的 UI,例如 WINDOWS8 的版本就充分利用了 Metro 控件。

InfoQ:在开发追信的过程中,技术上遇到了哪些挑战,是如何克服的?

仲仓戟:追信理念是将有线互联网内容导入后实现多平台的覆盖,多屏覆盖是今后大趋势。在技术上主要在早期实现各自平台自动编译功能遇到不少问题,但最终都被解决。例如 Symbian 自动编译,需要将软件 ID 逐一替换,涉及到大量程序文件和资源文件的替换。Android 的自动编译涉及到 src 中路径的修改和 xml、java 文件中包名的替换。iOS 的自动编译涉及到在 MAC 系统下的开发,自动替换资源文件、自动导入签名证书和 mobileprovision 文件。而在平台开发上也遭遇到了软件 UI 同质化的问题,因此投入了精力实现了个性化首页功能,让用户通过图文模块的拼接实现完全个性化的 UI。

InfoQ:目前市场上出现的移动 App 生产工具,您认为对移动开发者会有怎样的影响?

仲仓戟:不同的工具满足不同用户的需求。批量化快速化的移动 App 生产工具能满足有通用化需求的用户,特别是哪些使用通用化平台的用户(博客、微博、电商等),对于他们来说,无线平台只是他们原先内容和业务的延伸,满足用户有线和无线无缝互通的需求。 而对于移动开发者,着眼点是满足个性化需求,更多的是挖掘在移动环境下用户独特的需求,例如 LBS、拍照反馈、游戏化等等。两者并没有绝对的冲突点。 对于移动开发者来说,单纯的将有线互联网内容无线化是缺乏竞争力的,这块终将被很多移动 App 生产工具来实现。 举个现实的例子来说,有很多在线建 Web 站工具,也有很多中小公司为客户定制网站。有大的企业邮箱托管平台,也有很多公司单独卖企业邮箱软件。作为开发软件的需求方,判别使用哪种模式,是采用通用 App 生成工具还是单独定制开发,取决于他对无线化的价值判定,一个移动 App 软件如果只是满足一小部分用户的需求,没有必要投入大量资源,如果自身的业务类型适合用户在移动环境使用,则完全值得投入更多的金钱人力。

InfoQ:追信今年会有哪些规划,您认为在应用生成平台这个领域,未来的发展方向会是什么?

仲仓戟:追信今年一大转变是提供了更灵活的平台,面向开发者提供各种功能,同时全面拥抱 HTML5。追信平台的核心还是面向非技术开发者提供更个性化的功能,通过大量模块的组装可以制作出真正全平台覆盖的个性化内容和 UI 的客户端。追信的目标是如何将内容覆盖到更多的渠道,如何帮助内容方实现多屏覆盖。而面向开发者平台主要为了兼容更为灵活的业务形态,引入 HTML5 模块化可以让应用通过 Hybrid 方式更为灵活。HTML5 游戏、纯 WebApp 都可以利用追信魔盒打包,并可使用到追信平台提供的推送、统计、用户管理等功能。

在线应用平台今后的发展方向必然是 UI 的个性化,平台的全面化。而 HTML5 当前在技术方面如何同时覆盖 PC 和移动端是一大难点,虽然可以通过 CSS 流动布局和媒体选择进行兼容,但是依旧有很多问题。当这个问题获得突破后,今后应当会出现一站式同时生成 WEB 网站、WAP 网站和移动 APP 的站点。 追信正在这方面进行尝试,已经取得了一定的成果,今后会逐步通过魔盒帮助进行分享经验。

移动HTML5语言 & 开发