@栗元峰,开源爱好者。从iOS应用开发、cocos2d-iphone游戏开发到cocos2d-x游戏开发,参与了appstore排行榜单***的《全民英雄》的开发,和其他多款上线成功项目。目前供职于http://9miao.com,专注于开源跨平台移动应用引擎CrossApp的开发。
【软件简介】
CrossApp是一款免费、开源、跨平台的移动应用开发引擎,使用C++开发,基于OpenGL ES 2.0渲染,可以帮助所有开发者快速的开发出跨平台的原生移动应用,支持导出包括IOS和Android等。
【访谈实录】
1. 是什么促使你开发CrossApp跨平台移动应用开发引擎?
有一次我们老大(@大鸡蛋)需要做一款9秒社团的手机版,而且,为了便于版本维护,想使用跨平台解决方案,在网上寻找各种解决方案时,才发现没有特别适合 能开发出跨平台原生移动应用的解决方案(要么基于html5,要么收费),所以决定用cocos2d-x来做,在做的过程中,发现cocos2d-x是可 以满足移动游戏的开发,但是无法满足移动应用的开发,很多思路和特性都无法匹配,在封装了很多具有应用特性的功能后,最终还是放弃了cocos2d-x, 并决定抽取cocos2d-x的跨平台部分然后重新开发一款专门针对移动应用的开源引擎,于是便开始了CrossApp开源跨平台引擎之路。
2. CrossApp引擎有什么优势和特点?
CrossApp支持各大主流开发平台,包括Mac、iOS、Android、Win32、WP8,正因为CrossApp的跨平台的特性,所以相对传 统的iOS和Android原生应用开发,CrossApp更能节省开发的周期和成本,App开发完成后只需要经过较为简单的移植工作,就能轻松实现在不 同平台上应用。
CrossApp封装了大量的UI控件,而且每种控件的功能十分丰富,开发者可以直接使用功能丰富的控件进行应用的开发,这些控件基本满足应用开发需求中 的大部分功能,同时也免去了自己封装UI控件花费的大量时间,进一步提升开发的效率,官方会每周更新1~2次新的控件。
CrossApp整合一些第三方库,例如常见的数据解析库jsoncpp、tinyxml、http等,同时CrossApp也通过第三方库spidermonkey转换,使之可以直接使用js脚本编写程序,第三方开发者也可以提供更多第三方库给广大使用者。
3. CrossApp引擎将来的发展方向?
- a)不断的优化渲染效率以及整个引擎的结构
- b)不断丰富UI控件以及添加各种第三方库,降低引擎使用复杂度
- c)不断的优化UI的用户体验,保证用CrossApp做出来的项目具有优越的用户体验
- d)将来还会支持各种脚本语言的转换,使之可以直接用js、lua等其他语言来开发项目
4. 目前参与开发/维护CrossApp的人员有多少?
现在内部全职开发有6人,并且有十几名外部开发者在为我们的引擎写新的东西,我们期待更多开源开发者加入到9秒社团常务贡献委员会(简称“9贡委”)中来。
5. CrossApp发展这么长时间,是否有外部人员提交过代码或者为CrossApp做过贡献?
有的,CrossApp上线第三天就有外部开发者为我们提交了代码,并且已经有一部分的UI控件是外部人员提交并审核通过后添加到引擎中的,如CASwitch、CASlider等。
6. CrossApp是否会付费?
不会的,我们的引擎将会永远完全开源免费。
7. CrossApp目前怎么推广?
目前主要依靠开源社区来进行推广,包括oschina.net、9miao.com等,目前我们还和oschina一起合作了CrossApp的控件悬赏开发活动,后面还会增加更多新的活动。
8. 能否谈一下你对开源的理解,以及对国内开源技术和产品的看法?
9秒社团一直是开源项目的坚定执行者,开源软件容易获得用户的认可,也可以快速的获得用户的反馈,这些都是商业软件所不具备的。国内的开源经过这么多年的 积累也有了一些比较成熟和有影响力的开源项目。希望更多人可以参与到开源项目中去,体验一些在工作中无法体验到的快乐。