BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

AvantX:一个新的跨平台移动开发框架

| 作者 徐川 关注 10 他的粉丝 发布于 2015年5月12日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

近日在广州的一场活动上,创业公司PeachApp的CTO段岩(Rocky Duan)公开了他们研发的跨平台移动开发框架:AvantX。它的官方网站上公布了一些特性和设计思想。InfoQ记者联系段岩获得了此框架的进一步信息。

AvantX采用了MVVM架构,并且在ViewModel和View层之间添加视图抽象层,将XML编写的UI组件映射到对应平台的原生UI组件。在跨平台上,它需要首先编写Java代码,然后通过J2OBJC将代码转换为iOS平台的代码,另外开发团队还计划通过SharpenGWT支持Windows Phone和Mobile Web平台。

AvantX框架的特性:

  • 视图抽象层提倡UI组件和业务逻辑的分离,大大促进了UI组件的可重用性;开发者可拓展抽象层,加入深度定制的Ui组件
  • 开发模式下可实时预览UI界面的更新,达成与HTML5媲美的敏捷开发体验
  • 可动态加载XML文件,实现远程更新UI界面和部分业务逻辑
  • 采用各平台原生的内存管理,对开发者可见,所翻译代码易读,方便调试。
  • 通过J2OBJC直接调用iOS原生API。
  • 可动态调控的事件记录功能,后台可实时获取在线用户当前页面、历史操作
  • 支持可动态更新的A/B测试,调整页面模板即可实现。
  • 通过定义页面URI获得方便的页面跳转、深度链接、推送消息跳转能力。

你可以在这个视频Demo观看它的一些特性。视频中还展示了live coding能力,无需重新编译即可查看用户界面的修改结果。

和HTML5、React Native、Xamarin等移动跨平台开发解决方案相比,AvantX在内存管理、原生API调用、调试等方面都有着自己的优势。因为AvantX在本质上只共享Model, ViewModel和视图抽象层的代码,对于iOS平台,通过J2OBJC将所有代码都翻译到Objective-C原生代码,而视图抽象层也映射到各平台的原生UI组件,因此能完美地与原生移动开发环境和工具链相配合使用。

至于为何开发这个框架,段岩对记者表示:“作为有Web前端背景的移动开发者,我们深深感到移动端工具链和Web前端工具链的差距。Web前端的敏捷开发特性是不少移动开发者青睐HTML5的根本原因,但是,HTML5相比起Native开发在用户体验和性能上仍有不小的鸿沟,使得想开发精品应用的开发者望而却步。而一些跨平台解决方案,如Qt,React Native,Xamarin等等,要么用户体验非原生,要么开发体验不透明。这是我们决定自己着手写一套框架的原因。”

AvantX框架的开发团队目前由两人组成,他们也在国内寻找有兴趣的开发者协助框架的开发。今年他们计划在秋季和少数几个团队展开邀请测试,并在年底前开源。


感谢崔康对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT