一. AppWorker是什么?
AppWorker是一个移动开发的平台或技术,与之对等的是Android移动开发技术,iOS移动开发技术。我们可以从下面的表里看出他们之间的关联和区别.
开发环境 | IDE | 开发语言 | SDK | 生成安装包 | |
---|---|---|---|---|---|
Android | Windows/MAC | Eclipse/Android Studio | Java | Android SDK | apk安装包 |
iOS | MAC | XCode | ObjectC/Swift | iOS SDK | ipa安装包 |
AppWorker | Windows/MAC | AppWorker Studio | JavaScript | AppWorker SDK | apk,ipa安装包 |
从这个表我们总结一下平台的特点:
- 移动App开发过程的所有阶段平台都介入:编码—调试—编译—测试—发布。在任何一个环节都有对应的产品和服务来对应。
- 使用平台开发App完全不需要了解其它二种技术的技术细节,也不需要搭建开发环境和IDE.
- 使用平台开发需要了解平台的基本框架和API
- 使用平台能做到一次开发,多平台发布,
Write Once,Run Anywhere
- 使用平台开发App需要云编译,需要联网。
- 使用平台开发使用JavaScript,相对于其它开发语言,使用更简单,更易理解
- 平台具有自己的JS SDK,目前近200多个组件,每个组件都有2个平台的原生实现。组件还在不断扩展中。
- AppWorker平台只是移动端开发相关,并没有提供服务端开发的任何服务和技术。
二. 为什么有AppWorker技术?
既然不同的移动操作系统有不同的开发技术,为什么还需要AppWorker平台?AppWorker平台是解决原生开发的二个重要问题:
- 相同的业务逻辑需要在 iOS 和 Android 平台各实现一次,多套人,多套代码带来的开发,维护以及交流的效率和成本。除了开发成本高,也会引入体验的细微差别。是否有一种技术方案可以做到一份代码,两个平台运行,行为相同
- 移动 APP 开发领域,要极致体验发布就不灵活(Native),要灵活发布就没有极致体验(H5)。有没有一种技术方案可以兼顾极致的体验和灵活的发布?
平台能很好的解决这二个问题。
三. AppWorker的优点?
- 不同于其它跨平台技术以H5为基础,平台从ui到功能所有都是对应原生的实现,比如do_Button组件运行在Android下对应的是Button类,在iOS下对应是UIButton类. 从而确保跨平台而不牺牲体验.
- 平台的ui搭建可以通过所见即所得的方式在我们提供的IDE上可视化拖拽生成,方便而且精准.
- 平台的ui构建能做到一次开发,多平台多屏幕适配.
- 用平台开发的js源码可以自己加密成二进制文件,而不是简单的混淆,确保安全性
- 用平台开发很容易实现热升级,而且不会被Apple商店限制
- 如果具有Android和iOS技能,可以很方便的开发自己的组件,集成到平台平台用于自己的App使用或分享给其他人使用。
四. AppWorker开发和原生开发的关系?
平台并没有脱离原生开发,只不过把原生开发和App开发者分离了,原生开发者只负责开发和业务无关的组件,比如Button,VideoView之类的。而App开发者不需要理解操作系统的差异,只需要参考组件的一套JS的API,然后专心整理自己App的业务需求,就能搭建出跨平台的App。
AppWorker平台构建的平台也是积累和沉淀原生开发人员的技术的一种方式,而且是比代码级别更高级别的组件重用,我们提供了一个标准的平台,让原生开发者可以封装积累自己的技术,我们的平台会保证质量。
而且原生开发者在我们的平台上销售自己的组件,App开发者购买使用组件开发App,从而促进一个完整的生态圈的发展。
组件扩展的基本过程就是:
- 我们提供的组件开发管理界面上创建组件,定义属性,事件,方法
- 定义完后,可以下载我们自动生成的原生Android, iOS项目,很多代码已经自动生成
- 开发者在这个项目里添加真正功能实现的原生代码,编译成jar包或者a文件
- 上传jar包和a文件到我们的平台,然后自己开发App使用或者分享到组件商店给所有App开发者使用
五. 学习资料
- QQ讨论群:767161475
- 视频培训:基础培训1 基础培训2
- 教程文档:http://www.appworker.net/awdoc/guide/index.html
- API文档:http://www.appworker.net/awdoc/guide/index.html
- 常见问题:http://www.appworker.net/awdoc/faq/index.html
- 示例商店:示例源码注意,下载需要登录,登录的账号和主页是不一样的,需重新申请