html5为什么也需要前端开发(如何使用HTML5技术开发HybridApp)

%title插图%num

html5为什么也需要前端开发

  技术体系都差不多的,不过pc需要兼容的浏览器更多些,Mobile下Andorid,iOS都是基于webkit,相对会好些。

  移动前端发可分为:

  1、手机网页发。

  这分跟web前端发差别不大,使用的技术都是html+css+js。区别为手机浏览器是webkit的天下,pc端是IE的天下。手机网页可以理解成pc网页的缩小版加一些触摸特性。因为是在浏览器中进行的网页发,所有最终代码具有跨系统平台的特性。

  2、app前端发。

  使用的技术也是html+css+js,但它需要基于PhoneGap等发平台调用手机核心功能接口(包括地理定位,加速器,联系人,声音和振动等)模拟native app,这分跟web前端发完不同,最终代码发布要分别编译成各系统平台的app。

html5开发的app有哪些优点

html5 开发的app的工具暂时没有。 原生api映射的方案,如titanium、xamarin,其优点在于功能和性能与原生系统比较接近。 标准化、开发资源的丰富则是html5方案最大的优点,同时第三方的html5框架工具比如phonegap/cordova也极大促进了html5应用的发展,它们提供了方便的跨平台应用打包/发布服务、实用的api、灵活的扩展机制、以及积累下来的丰富的第三方api实现。而上游的w3c一旦开始支持一些新的api,phonegap/cordova也可以很快沿用这些标准的api将相关能力开放出去。 html5方案的主要不足则在于功能和性能方面,这主要是因为html5应用的能力严重依赖于系统自带的web引擎:ios的uiwebview、android的webview等,此类组件的html5能力相比safari for ios、chrome for android都要差一截。另外在android平台上,由于系统碎片化比较严重,不同android版本的webview的html5能力也有较大差异,导致相应的html5应用一致性难以保证。 html5应用的能力很大程度上依赖于web引擎的能力。因此,无论是移动操作系统开发商还是开发工具的开发商,都持续在web引擎的方向投入了更多的努力。

如何使用HTML5技术开发HybridApp

Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。

1、AppCan
AppCan是国Hybrid App混合模式开发的倡导者,AppCan应用引擎支持Hybrid App的开发和运行。并且着重解决了基于HTML5的移动应用"不流畅"和"体验差"的问题。使用AppCan应用引擎提供的Native交互能力,可以让HTML5开发的移动应用基本接近Native App的体验。[3]
AppCan作为中国Hybrid混合应用开发、移动平台、移动云平台的倡导者和领导者,以“免费+开源+开放”的互联网模式,为广大开发者提供一站式的移动应用开发支持服务。[4] 与此同时,从移动应用开发、管理、运营、安全四个方面,为各级政府和企事业单位,构建运营一体化的企业移动平台,企业通过个性化的移动运营门户,增强客户服务品质,提升整体经营管理水平。
现在,正益移动AppCan行业解决方案已成功应用于金融、航空、政府、石化、传媒等领域,客户包括东方航空、国家电网、中化集团、泰康人寿、新华社等众多大型企业,赢得了市场广泛认可,是国企业移动信息化领域的龙头企业。[4]

2、Appcelerator
Appcelerator的Titanium开发平台使开发者可以通过HTML、PHP、JavaScript、Ruby、Python等Web编程语言开发手机、平板和桌面的原生App。其优势在于它可以让用户轻松地访问超过300个API以及定位信息。
此外,Appcelerator提供针对特定行为或事件定制的统计。App的数据既可储存在云端,也可储存在设备上。

3、Kerkee
Kerkee是一个多主体共存型Hybrid框架,具有跨平台、用户体验好、性能高、扩展性好、灵活性强、易维护、规范化、集成云服务、具有Debug环境、彻底解决跨域问题。[2]
从开发者角度来说,它支持三种的团队开发模式:

针对Web开发者:
这种模式其中的一个场景是:只会Web开发,却不会Native开发的开发者提供了一系列的平台型接口。这种方式具有开发周期短,跨平台等优点。

针对Native开发者 :
这种开发模式的其中一个场景是:Native开发者想要截获Web页面的数据或者对数据进行自己的处理,或者Web页面中的行为进行修改。在这个时候,Kerkee框架将会为他们带来便利。

针对Web开发者和Native团队共同合作的开发团队 :
对于这种模式的团队,kerkee框架具体更开放更透明的协作,并且严格地隔离各自职责。各得Web团队和Native团队把主要精力定位到各自的模块上,有利于各自的模块优化到极致。

4、WeX5
WeX5采用混合应用(hybrid app)开发模式, UI体系完全基于w3c的html5+css3+js;引入jquery和bootstrap并对移动做了底层优化,效率和性能接近原生应用。WeX5本机API Framework采用phonegap(cordova)框架。[5]

5、APICloud
APICloud是一款“云端一体”的移动开发平台,信仰“云端一体”的理念,重新定义了移动应用开发。APICloud为开发者从“云”和“端”两个方向提供API,简化移动应用开发技术,让移动应用的开发周期从一个月缩短到7天。APICloud由“云API”和“端API”两部分组成,可以帮助开发者快速实现移动应用的开发、测试、发布、管理和运营的全生命周期管理。

6、PhoneGap
PhoneGap是一个免费且开源的开发环境,使开发者可以开发出在Android、Palm、黑莓、iPhone、iTouch及iPad等设备上运行的App。其使用的是HTML和JavaScript等标准的Web开发语言。开发者使用PhoneGap进行开发,可调用加速计、GPS/定位、照相机、声音等功能。
  PhoneGap还提供Adobe AIR App以及在线的培训课程,帮助开发者了解原生API并在他们自己的平台上开发移动App。

7、NativeScript
NativeScript是使用移动平台的 JavaScript 引擎来进行跨平台开发。逻辑部分自然无需多说,关键在于如何使用平台特性。NativeScript是通过反射得到所有平台 API,预编译它们,然后将这些 API 注入到 JavaScript 运行环境,接下来在 Javascript 调用后拦截这个调用,并运行 native 代码。NativeScript是使用大量 web 开发的技巧来进行 app 开发,因为工具链和语言都非常熟悉受到了很多前端开发者的欢迎。

8、Kinvey
Kinvey同样是一个为移动应用开发者提供后台创建服务的平台。Kinvey强调加速移动应用开发与销售的“即取即用”理念。Kinvey的中间层与数据层均托管在多个云服务提供商处,包括 Rackspace、Amazon与Microsoft。所有通过Kinvey存储的数据都会有四种方式备份:Amazon EC2、Windows Azure、Rackspace以及Kinvey自己的服务器,假如其中一两个出现了故障,用户的数据依然安然无恙。[6]

9、ExMobi
ExMobi通过全面的数据集成技术和丰富的跨平台客户端展现能力,将业务系统快速、安全、高效的移植于移动终端。ExMobi从开发(IDE环境)、集成(IT系统对接、云服务)、打包(各个操作系统的应用打包)、发布(应用的运行)、管理(日志管理,更新管理)上提供了一套完整的解决方案。并通过专业的培训和支撑渠道为开发者提供可持续的学习和交流空间,扫除开发障碍。[7]