移动端混合开发框架分析报告

上传人:xmg****18 文档编号:120437834 上传时间:2020-02-06 格式:DOC 页数:22 大小:510.98KB
返回 下载 相关 举报
移动端混合开发框架分析报告_第1页
第1页 / 共22页
移动端混合开发框架分析报告_第2页
第2页 / 共22页
移动端混合开发框架分析报告_第3页
第3页 / 共22页
移动端混合开发框架分析报告_第4页
第4页 / 共22页
移动端混合开发框架分析报告_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《移动端混合开发框架分析报告》由会员分享,可在线阅读,更多相关《移动端混合开发框架分析报告(22页珍藏版)》请在金锄头文库上搜索。

1、. 专业.专注 .移动端架构分析目录移动端架构分析11移动端常见开发模式51.1纯Native App51.1.1主流框架51.1.2优势61.1.3劣势61.1.4主流应用61.2Hybrid App61.2.1多View混合型71.2.1.1主流框架71.2.1.2优势71.2.1.3劣势71.2.1.4主流应用71.2.1.5发展趋势71.2.2Web主体型81.2.2.1主流框架平台81.2.2.2优势91.2.2.3劣势91.2.2.4主流应用101.2.2.5发展趋势101.2.3单View混合型101.2.3.1主流框架101.2.3.2优势101.2.3.3劣势101.2.3.

2、4主流应用101.3Web App101.3.1主流框架111.3.2优势111.3.3劣势111.3.4主流应用111.4四种主要开发模式对比112移动前端主流框架分析122.1Web和Native混合122.1.1WindVane+Hybrid+Native122.1.1.1简介122.1.1.2框架实现122.1.1.3架构图132.1.2AppCan132.1.2.1简介132.1.2.2框架实现132.1.2.3架构图142.2跨平台原生应用152.2.1BeeFramework152.2.1.1简介152.2.1.2框架实现152.2.1.3架构图162.2.2Native Scr

3、ipt172.2.2.1简介172.2.2.2框架实现172.2.2.3结构图182.2.3React Native182.2.3.1简介182.2.3.2框架实现182.2.3.3架构图203数梦移动端开发框架选择203.1开发模式选择203.1.1为什么不选择Native203.1.2玩什么不选择WebApp或Web主体型Hybird213.1.3选择多页面混合型Hybird213.2选择类WindVane框架213.2.1玩什么不选择React Native213.2.2玩什么选择类WindVane框架211 移动端常见开发模式目前主流应用程序大体分为三类:Native App 、Hyb

4、rid App、Web App。1.1 纯Native AppNative APP 指的是使用原生程式编写运行的第三方应用程序,一般依托于操作系统如iOS、Android、WP,有很强的交互,是一个完整的App,可拓展性强。需要用户下载安装使用。也叫本地app。Native App因为位于平台层上方,向下访问和兼容的能力会比较好一些,可以支持在线或离线,消息推送或本地资源访问,摄像拨号功能的调取。但是由于设备碎片化,App的开发成本要高很多,维持多个版本的更新升级比较麻烦,用户的安装门槛也比较高。但是比较乐观的是,AppStore培养了一种比较好的用户付费模式,所以在Apple的生态圈里,开发

5、者的盈利模式是一种明朗状态,其他market也在往这条路上靠拢。1.1.1 主流框架iOS:(1)、Cocoa 环境+Foundation 和UIKit 框架(2)、使用Objective-C 和Swift 做为主要开发语言(兼容C/C+)Android:(1)、Java虚拟机环境(2)、使用Java 作为主要开发语言(支持C/C+)WindowsPhone:(1)、Windows RunTime 框架(WP10)(2)、使用原生C+、C# 和Silverlight 做为主要开发语言1.1.2 优势(1)、打造完美的用户体验(2)、性能稳定(3)、操作速度快,上手流畅(4)、访问本地资源(通讯

6、录,相册)(5)、设计出色的动效,转场(6)、拥有系统级别的贴心通知或提醒(7)、用户留存率高1.1.3 劣势(1)、开发成本高,可移植性差,需要维护iOS、Android、WP等多个平台(不同平台有不同的开发语言和界面适配)(2)、维护成本高(例如一款App已更新至V5版本,但仍有用户在使用V2, V3, V4版本,需要更多的开发人员维护之前的版本)(3)、更新缓慢,根据不同平台,提交审核上线 等等不同的流程,需要经过的流程较复杂1.1.4 主流应用够快云库、微信电话本、美图秀秀等中量级应用。1.2 Hybrid AppHybrid APP指的是半原生半Web的混合类App。需要下载安装,部

7、分页面看上去类似Native App,但只有很少的UI Web View,访问的内容是 Web 。Hybrid App主要以JS+Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制,成为真正适合跨平台的开发。Hybrid App同时使用网页语言与程序语言开发,通过应用商店区分移动操作系统分发,用户需要安装使用的移动应用。总体特性更接近Native App但是和Web App区别较大。只是因为同时使用了网页语言编码,所以开发成本和难度比Native App要小很多。因此说,Hybrid App兼具了Native App的所有优势,也兼具了Web App使用HTML5跨平台开

8、发低成本的优势。Hybrid App按网页语言与程序语言的混合,通常分为三种类型:多View混合型,单View混合型,Web主体型。1.2.1 多View混合型即Native View 和Web View 独立展示,Native View 与WebView 交替的场景出现。这种应用混合逻辑相对简单。即在需要的时候,将WebView 当成一个独立的View(Activity) 运行起来,在WebView 内完成相关的展示操作。这种移动应用主体通常是Native App,Web 技术只是起到补充作用。开发难度和Native App 基本相当。1.2.1.1 主流框架Native部分使用操作系统原生

9、框架+JSBridge。Web融合部分国内阿里系使用最广的框架WindVane+HybridAPI等(后续章节详细介绍)。1.2.1.2 优势(1)、高效、扩展性强、支持多团队并行开发(2)、衔接Android/iOS原生导航交互,完美的用户体验(3)、业务实现更灵活,复杂业务可通过Native 实现,频繁变化或简单业务通过Web实现,更好的满足移动端业务多样性、快速迭代要求(4)、轻量级的框架,框架侵入性弱,各个业务高度独立,第三方业务快速接入(5)、使用JS Bridge 来实现HTML5页面与原生框架的数据交互:JSNative,性能和安全性更佳 (6)、扩展丰富,能实现超级App1.2

10、.1.3 劣势(1)、技术要求高,需要开发人员同时懂Native和WebApp开发(2)、重量级架构,架构搭建需要较长时间(3)、开源社区相关框架少,成熟框架如WindVane等不开源1.2.1.4 主流应用目前使用最常用的开发模式,市场上能见到的超级App 基本都是用这种开发模式,如微信、支付宝、淘宝等;其他如钉钉、新闻客户端等移动端App1.2.1.5 发展趋势2014-2015最新发展趋势,同时在Web和Native融合的基础上加入ReactNative或NativeScript等跨平台构建原生应用框架(见后续介绍)。1.2.2 Web主体型即移动应用的主体是Web View,主要以网页

11、语言编写,穿插Native功能的Hybrid App开发类型。这种类型开发的移动应用体验相对而言存在缺陷,但整体开发难度大幅降低,并且基本可以实现跨平台。Web主体型的移动应用用户体验的好坏,主要取决于底层中间件的交互与跨平台的能力。国外的appMobi、PhoneGap和国内的WeX5、AppCan和Rexsee都属于Web主体型移动应用中间件。其中Rexsee不支持跨平台开发。appMobi和PhoneGap除基础的底层能力更多是通过插件(Plugins)扩展的机制实现Hybrid。AppCan除了插件机制,还提供了大量的单View混合型的接口来完善和弥补Web主体型Hybrid App体

12、验差的问题,接近Native App的体验。而WeX5则在揉合PhoneGap和Bootstrap等主流技术的基础上,对性能进一步做了深度优化,不但完全具备Native App对本地资源的调用能力,性能体验也不输原生;WeX5所开发出来的app具备完全的跨端运行能力,可以无需任何修改直接运行在各种前端环境上。1.2.2.1 主流框架平台1、AppceleratorAppcelerator的Titanium开发平台使开发者可以通过HTML、PHP、JavaScript、Ruby、Python等Web编程语言开发手机、平板和桌面的原生App。其优势在于它可以让用户轻松地访问超过300个API以及定

13、位信息。此外,Appcelerator提供针对特定行为或事件定制的统计。App的数据既可储存在云端,也可储存在设备上。2、APICloudAPICloud是一款“云端一体”的移动开发平台,信仰“云端一体”的理念,重新定义了移动应用开发。APICloud为开发者从“云”和“端”两个方向提供API,简化移动应用开发技术,让移动应用的开发周期从一个月缩短到7天。APICloud由“云API”和“端API”两部分组成,可以帮助开发者快速实现移动应用的开发、测试、发布、管理和运营的全生命周期管理。3、PhoneGapPhoneGap是一个免费且开源的开发环境,使开发者可以开发出在Android、Palm

14、、黑莓、iPhone、iTouch及iPad等设备上运行的App。其使用的是HTML和JavaScript等标准的Web开发语言。开发者使用PhoneGap进行开发,可调用加速计、GPS/定位、照相机、声音等功能。PhoneGap还提供Adobe AIR App以及在线的培训课程,帮助开发者了解原生API并在他们自己的平台上开发移动App。4、KinveyKinvey同样是一个为移动应用开发者提供后台创建服务的平台。Kinvey强调加速移动应用开发与销售的“即取即用”理念。Kinvey的中间层与数据层均托管在多个云服务提供商处,包括 Rackspace、Amazon与Microsoft。所有通

15、过Kinvey存储的数据都会有四种方式备份:Amazon EC2、Windows Azure、Rackspace以及Kinvey自己的服务器,假如其中一两个出现了故障,用户的数据依然安然无恙。5、ExMobiExMobi通过全面的数据集成技术和丰富的跨平台客户端展现能力,将业务系统快速、安全、高效的移植于移动终端。ExMobi从开发(IDE环境)、集成(IT系统对接、云服务)、打包(各个操作系统的应用打包)、发布(应用的运行)、管理(日志管理,更新管理)上提供了一套完整的解决方案。并通过专业的培训和支撑渠道为开发者提供可持续的学习和交流空间,扫除开发障碍。1.2.2.2 优势(1)、可跨平台,兼容iOS、Android、WP等多个平台(2)、易用性,会Web开发即可转型App开发(3)、可

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号