图解框架-跨平台应用开发方案

原创 2012年03月27日 10:55:38

前言

各种本地框架(比如android的java api,iphone的#C api)对应用开发者来说,绝对不是那么好伺候的大爷。如果开发者需要为一款应用开发Android和IPhone两个版本,如何做到使尽量多的代码重用,尽量减少开发成本和维护负担?

方案1:独立Ui+公用Engine


优点:应用逻辑部分可以重用

缺点:用户交互部分需要开发和维护两份,依然是不可忽略的工作量。

适用场合:团队或个人很熟悉Android和IPhone平台应用开发框架或者对效率要求很苛刻

方案2:公用Ui+公用Engine



优点:Ui可以借助于基于Html5、javascript、css3的库来实现,比如JQuery Mobile。 应用逻辑也完全用Javascript实现,最大限度的重用代码

缺点:效率会比方案1差,如果不是太在乎效率的情况,比如大型游戏,效率的小小损失与减少的工作量相比,完全可以忽略不计。

适用场景: 对效率要求不是很苛刻即可


进军Html5:

Html5相比以前的版本定义了一些新的标签和内置的Javascript Api,和移动应用开发关系比较密切的是对本地设备访问的支持。比如有定义访问Camera、GSensor的标准javascript接口。 如果需要访问Html5标准里定义好的本地硬件就很方便,如果需要访问本地的Hdmi,那就需要自己做Javascript的扩展来实现。

下图是Android设备里通过Javascript访问本地硬件的框架图,(图右边)Html5标准定义好的硬件Webkit有内建的js接口提供,(图左边)木有定义的就需要应用自己向Webkit注册。

目前Html5标准并未在很多设备上都有很好的支持,所有就出现了PhoneGap这种好帮手,PhoneGap分别在Android/IPhone/WP等平台实现了好多NativeJsAdapter(carmera/gsensor等等)来通过图左边的方式访问本地设备。



云端交互:

前面说的都是如何用Html5实现本地应用,并未涉及到和服务器的交互。服务器对本地应用可以不是必须的,就拿水果忍者来说,不联网可以玩,但联网就可以看到积分排名,也是很有用的功能。首先需要解释一下网络前端技术和网络后端技术这两个概念,前端就是在本地设备上运行的东西,后端就是在服务器端运行的东西。 大家都知道javascript是动态生成html和css的, 那后端的php或servlet等后端技术就是动态生成html和css以及javascript的,在本地你是看不到php或servlet的(幕后工作者嘛)。 下图是整个Ui和AppEngine全部部署在服务器端的框架图,这种情景适用于不联网就不能用的场景,当然这种应用并不算多,但这种应用的升级异常简单,在服务器端替换文件即可。更多的是部分功能部署的服务器端的情况。


相关文章推荐

基于HTML5技术跨平台混合式应用开发解决方案UniSDP

背景: 笔者2004~2008年初,从事移动互联网开发,学习使用了J2ME、Brew、Symbian等开发技术。08年加入东软商用,从事JavaEE、RIA企业应用和智能设备开发,主要使用Act...

基于HTML5 技术跨平台混合式应用开发解决方案-UniSDP

.UniSDP 定义: UniSDP (Unified Smart Device Development Practices)项目启始于2010 年12 月,它是一个用于 构建支持PC 和智能设备...

主流跨平台移动应用开发框架比较

近年来,随着硬件设备和系统平台的不断发展,手持移动设备的计算能力得到了显著的提高,智能手机和平板电脑已经越来越多地出现在人们的日常生活之中,加之诸如重力感应、GPS 模块、蓝牙模块、WIFI 接入等特...

前端学习总结(十二)ionic——媲美原生的h5跨平台移动应用开发框架

一 ionic简介 ionic是一个专注于用WEB开发技术,基于HTML5创建类似于手机平台原生应用的一个开发框架。绑定了AngularJS和Sass。这个框架的目的是从web的角度开发手机应用,基...

关于跨平台移动应用开发框架的探索 -- PhoneGap

移动互联时代的高速发展 近年来,随着硬件设备和系统平台的不断发展,手持移动设备的计算能力得到了显著的提高,智能手机和平板电脑已经越来越多地出现在人们的日常生活之中,加之诸如重力感应、GPS 模块、蓝...

React Native跨平台移动应用开发框架介绍

好久没有来更新博客了,给大家说声抱歉,人一旦懒惰起来连自己都害怕。可能是因为一个人生活,少了很多动力吧。这都是在给自己找理由。我在不偷懒了。 最近我要入坑了,公司安排我要开始搞React Nat...
  • m366917
  • m366917
  • 2017年03月11日 18:32
  • 1862

HybridAPP框架MUI(跨平台移动端应用开发)

在Android和IOS平台上开发应用通过HTML5的方式。由MUI框架快速开发。

PhoneGap跨平台移动应用开发框架体验

早在7月份就听说PhoneGap.移动应用产品往往常常考虑多个平台的支持.单一平台很难保证应用的覆盖面或者换句话说就是用户群体的量和持续的活跃性上从长期的角度而言往往存在短板.另外从开发的角度而言.多...
  • moliyll
  • moliyll
  • 2012年05月23日 10:17
  • 909

跨平台的移动应用开发框架-Sencha Touch

最近决定转以日常技术类文章为主线了,鸡汤类的东西,这个还得看灵感了。 今天将为大家介绍的,是一款跨移动终端系统的开发框架,Sencha Touch。用了此框架,就再也不用为学java写android...

【快速敏捷移动应用开发】跨平台开发:PhoneGap移动开发框架

目前,随着Google的Android手机和苹果的iphone手机的逐渐普及,越来越多开发者加入到移动应用开发的大军当中。其中,Android应用是基于Java语言基础上进行开发的,而苹果公司的iph...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:图解框架-跨平台应用开发方案
举报原因:
原因补充:

(最多只允许输入30个字)