关键字:AppCan 移动开发平台 移动应用 
Hybrid App在过去的两年中已经成为移动界的核心话题,但是作为一名Web开发者来说要如何站在移动互联网的浪潮之巅呢?是选择学习原生开发,研究Java、Object-C、C#等语言,还是选择继续使用网页开发,容忍HTML5功能的局限性?就在开发者左右为难的情况下Hybrid App作为一个折中的解决方案诞生了。那么究竟什么才是Hybrid App呢?
HybridApp概念
Hybrid App:Hybrid App is a mobile application that is coded in both browser-supported language and computer language. They are available through application distribution platforms such as the Apple App Store, Google Play etc. Usually, they are downloaded from the platform to a target device, such as iPhone, Android phone or Windows Phone. The subscribers need to install to run them.
总体来讲,Hybrid App是同时采用网页语言与程序语言进行开发,通过不同的应用商店进行打包与分发,应用的特性更接近原生应用而且又区别与Web应用。但是在开发过程中同时使用了网页语言,所以开发成本与难度大大降低。也就是说Hybrid App兼具了Native App与Web App两者的诸多优点。
浅析Hybrid App
Hybrid App主要以JS+Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制,成为真正适合跨平台的开发。目前已经有众多Hybrid App开发成功应用,比如百度、网易、街旁等知名移动应用,都是采用Hybrid App开发模式。
经过众多开发者与成功案例证明Hybrid App兼具了Native App的良好用户体验的优势,也兼具了Web App使用HTML5跨平台开发低成本的优势。现在有更多的开发者在面临移动平台的选择,所以在这里根据开发中各个平台的使用情况,针对现在主流的平台进行分析。
主流移动平台分析
HybridApp开发,现阶段主流的平台包括PhoneGap,AppCan,appMobi,Titanium等,它们基于webkit开源内核,使用HTML5 标准开发,适配机型简单,支持开发者自定义插件,并能很好的应用于商业,教育,娱乐等行业,成为移动开发者的首选开发平台。
PhoneGap(Cordova)
产品功能:
PhoneGap是一款国外的开源移动开发平台。目前已经将核心代码贡献给Apache cordova,最新版本是2.6.0,它是基于HTML,CSS和JavaScript的,可以使用一些开源的框架比如jQuery Mobile,Dojo Mobile,Sencha Touch等等来提高用户体验,也提供了比较丰富的原生插件调用。
特性:
1.       可以使用DreamWeaver 5.5编码,现在使用appMobi提供的xdk 进行模拟器开发。
2.       代码开源,开发者可以放心使用。
3.       兼容性,一次开发,多处运行。
4.       使用JS+HTML5,成本低。
优点:
1.       Native接口比较丰富,通过封装的API可以直接访问硬件,比如说加速,相机,指南针,GPS,文件访问等。
2.       接口文档描述非常详细。
3.       支持平台多,包括iOS,Android,Blackberry,Symbian,bada,Windows Phone 7,Windows Phone 8 等。
缺点:
1.       需要针对相应的平台环境配置,进行编译,打包测试,发布等等。由于使用Hybrid开发的用户群,大部分是web开发者,对原生开发基本不了解,这无疑给每一个开发者增加了沉重的负担,需要对各个平台的开发都要需要了解,对硬件等等都要配置,加大开发成本。
2.       使用效果启动慢,页面切换响应慢,数据请求慢。
3.       文档虽比较详细但是基本是英文,对于国内大部分用户英文水平较差的是比较大的挑战。
4.       因为是国外的框架,技术支持不够到位,出现问题,无法排解,成为技术攻关的难点。
AppCan
产品功能:
AppCan是本土移动开发中使用最广的移动平台,网络舆论而言,AppCan是PhoneGap的中国化,但是从对AppCan实际使用,以及转向移动开发的朋友们互相交流反馈,他们是截然不同的两个移动平台,AppCan不仅封装了类似于PhoneGap的本地调用功能,而且封装了uexWindow多窗口机制,实现了移动端的iframe效果,虽然不是开源项目,但一直都有面向开发者的免费版,并且也有定位于企业用户的企业版套装,目前最新版本为2.2.X。
特性:
1.       提供的集成开发环境的IDE进行模拟器开发。
2.       兼容性,一次开发,多处运行。
3.       使用JS+HTML5 ,成本低。
4.       在线打包。
5.       代码加密保护机制。
优点:
1.       支持在线上传证书打包,对于不了解苹果,以及Android 环境开发的人是福音。
2.       支持更多的原生调用,比如UI控件的封装,通讯类(socket),地图,支付宝等更多的原生控件支持。
3.       拥有统一数据统计平台,便于运营管理开发的应用。
4.       完善的技术支持,官方论坛以及Q群建设较为完善,使开发者更好的进行交流沟通。
缺点:
1.       虽然有中文的开发文档,但描述比较简单,希望他们丰富他们的API文档。
2.       免费版本不支持自定义插件(据说企业版可以自定义插件)。
3.       暂时只支持iOS,Android两大平台,不知道什么时候推出Windows Phone 8?
4.       许多功能需要企业版才能实现,不过是收费的。
Titanium
 产品功能:
 Titanium移动平台是所有移动开发平台中比较另类的,它将JavaScript和本地库链接在一起,编译成字节码,针对iOS以及Android两个平台分别构建一个软件包。应用程序使用HTML,JavaScript和CSS进行开发,并支持PHP,Ruby和Python。应用程序可以使用 Appcelerator API访问本地特性。并提供Appcelerator Studio开发环境,由于编译成本地代码,所以用户体验是最好的。
特性:
1. 针对不同平台生成对应的原生包。
2.  供Appcelerator Studio开发。
 优点:
1. 针对JS解析生成原生控件,基本达到纯原生的用户体验。
2.  支持自定义插件。
         缺点:
1.       API文档为英文,并且比较简单,对国内用户使用有一定挑战。
2.       跟PhoneGap同样,国外框架,技术支持困难。
3.       支持Android,iOS,黑莓平台。
4.       环境需要用户自己搭建比较复杂。
appMobi
产品功能:
   appMobi推出了全新开发工具XDK,这个工具使得开发者可以使用HTML5构建网络和移动平台的应用程序,可以进行屏幕仿真调试、设备实际调试和遥控调试等。
特性:
1.      使用XDK 进行开发。
2.       Html5+CSS+JS。
3.       一次开发,多处运行。
优点:
1.       本地接口较为丰富,并且推出有游戏加速引擎,主要包括物理引擎、离线和动态缓存、媒体播放器、验证和加密、增强现实、二维码和QR扫描、更好的显示支持。
缺点:
1.       国外框架,技术支持差。
目前经有很多移动开发公司把PhoneGap进行了封装,提供打包、快速模板等开发环境。但是由于PhoneGap本身的局限性,如果要做长期的商业项目还有很长的路要走。而国内使用最多的AppCan,它从多个角度多种模式进行开发,可以满足国内从普通网站维护者到Web专业开发者等对于移动应用的需求。加上良好的技术支持,目前已经成为众多开发者的首选框架。而appMobi,Titanium移动平台,不同的用户根据自己的需求也有相应的选择。
Hybrid App,一个特定时期的特定产品,不同的期望不同的选择。l

混合开发模式下主流移动开发平台分析相关推荐

  1. 微信三方开发平台开发模式下被动回复用户消息

    微信三方开发平台开发模式下被动回复用户消息视频

  2. 前后端分离开发模式下后端质量的保证 —— 单元测试

    概述 在今天, 前后端分离已经是首选的一个开发模式.这对于后端团队来说其实是一个好消息,减轻任务并且更专注.在测试方面,就更加依赖于单元测试对于API以及后端业务逻辑的较验.当然单元测试并非在前后端分 ...

  3. ultraedit 运行的是试用模式_单元测试 —— 前后端分离开发模式下后端质量的保证...

    概述 在今天, 前后端分离已经是首选的一个开发模式.这对于后端团队来说其实是一个好消息,减轻任务并且更专注.在测试方面,就更加依赖于单元测试对于API以及后端业务逻辑的较验.当然单元测试并非在前后端分 ...

  4. Nodejs搭建前后端分离开发模式下的微信网页项目

    原文链接:<Nodejs搭建前后端分离开发模式下的微信网页项目>- 陈帅华 本文涉及对前后端分离及微信网页项目中的前端如何在本地环境中开发与调试的思考. 主要问题 1.如何配置微信公众平台 ...

  5. 公众号开发模式下客服消息开发

    当用户和公众号产生特定动作的交互时,微信将会把消息数据推送给开发者,开发者可以在一段时间内调用客服接口,通过POST一个JSON数据包来发送消息给普通用户.此接口主要用于客服等有人工消息处理环节的功能 ...

  6. MBD开发模式下的XIL仿真测试

    MBD开发模式下的XIL仿真测试 "想了解MBD模式下的MIL.SIL.PIL.HIL吗?"--虹科 汽车从一个发动机加上几个轮子的简单形态发展到如今机械与电子高度融合的复杂整体, ...

  7. 4.4 开发模式下的测试:简化我们对链码的测试过程

    4.4 开发模式下的测试:简化我们对链码的测试过程 原创kevin-hf(ID不是微信) 最后发布于2019-02-26 16:48:19 阅读数 180  收藏 展开 目标 熟练掌握链码的 dev ...

  8. 敏捷开发模式下如何更好的进行测试

    最近CTO组建了一个敏捷开发团队,团队人员包括  PM.设计.开发.测试角色,主要由PM来主导团队走向,因为以前并没有参加过敏捷开发的经验,对敏捷开发做了简单理解后,参考了前人的一些意见,总结出在 敏 ...

  9. Vue - 去除控制台“你正在开发模式下运行Vue”的警告

    目录 1. 警告内容 2. 解决方案 1. 警告内容 调试 Vue 代码时,Console 控制台老是有警告,警告内容 文字信息如下: You are running Vue in developme ...

  10. 如何在微信公众帐号开发模式下,通过程序代码向用户发送符号表情。

    本文重点介绍如何在微信公众帐号开发模式下,通过程序代码向用户发送符号表情.部分代码来自:FreeEIM 至于如何识别用户发送的是符号表情,就不在此讲解了,留给大家一点学习思考的空间.我只是给大家一个提 ...

最新文章

  1. 袁哥写的漏洞研究方法总结
  2. Android app项目开发步骤总结
  3. C — 对C语言的认识
  4. java webstock 在线直播_在线教育直播开发的这些知识你知道吗?
  5. .net的retrofit--WebApiClient底层篇
  6. python 中 yield 的使用
  7. python+OpenCV图像处理(十)霍夫变换简单图形检测
  8. 关于TCP协议的几个问题
  9. linux 网桥配置命令:brctl
  10. 抖音autojs 云控脚本源码
  11. 2022-2027年中国OLED行业市场调研及未来发展趋势预测报告
  12. C# 压缩和修复Access数据库
  13. DSP TMS320F2803x 增强型捕获模块(eCAP)
  14. 抖音、快手打起来了,互联网大佬集体内卷?
  15. html实现在线聊天,利用HTML5实现电脑端微信聊天窗口界面
  16. elasticsearch通用工具类
  17. TCP应用层主要协议
  18. 微信订阅号获取openid,然后获取用户信息
  19. Android实习周记:第一周,井底之蛙上岸
  20. 低速 CAN 总线偶尔无法正常通信,该如何诊断?

热门文章

  1. jquery下载及怎么选择版本
  2. 办公室计算机打印机共享,如何将办公室的所有电脑共享一个打印机???
  3. 贝多芬交响曲全集(转)
  4. 黄教头第六周作业 一个基础的反射型xss
  5. 大型Web网站优化总结一
  6. 四.Protobuf3 缺省值
  7. 同一个基站连接两个核心网AMF POOL的场景分析及带AMF重选的注册流程
  8. 三层交换机VLAN路由技术
  9. pdf加页码java_Java 添加页码到PDF文档
  10. 课程设计---族谱管理系统(c++)