h5做app和原生app有什么区别?

H5开发的web APP和原生APP的区别有以下几个方面:
一、开发方面 
原生App 
⊙ 每一种移动操作系统都需要独立的开发项目
⊙ 每种平台都需要独立的开发语言。Java(Android), Objective-C(iOS)以及Visual C++(Windows Mobile)等等
⊙ 需要使用各自的软件开发包,开发工具以及各自的控件 

移动Web App
⊙ 因为运行在移动设备的浏览器上,所以只需要一个开发项目
⊙ 这种应用可以使用HTML5,CSS3以及JavaScript以及服务器端语言来完成(PHP,Ruby on Rails,Python)
⊙ 这里可没有标准的SDK,基本任意选择别忘了有一些跨平台的开发工具,比如PhoneGap, Sencha Touch 2,APPcan以及Appcelerator Titanium等等。 

二、能力方面 
原生App
⊙ 能够与移动硬件设备的底层功能,比如个人信息,摄像头以及重力加速器等等

移动Web App
⊙ 只能使用有限的移动硬件设备功能。

三、获取方法 
原生App
⊙ 直接下载到设备
⊙ 以独立的应用程序运行(并不需要浏览器)
⊙ 用户必须手动去下载并安装这些原生App
⊙ 有一些商店与卖场来帮助用户寻找你的App,目前app市场不计其数

移动Web App
⊙ 从移动设备上的浏览器访问
⊙ 不需要安装额外的软件
⊙ 软件更新只需要服务器就够了
⊙ 因为现在没有什么商品或卖场提供这种App,所以如何搜索这些移动Web App相当不简单。

四、版本控制
原生App
⊙ 用户可以自由地选择是否更新软件版本,所以会出现不同用户同时使用不同版本的情况

移动Web App
⊙ 所有的用户都是用同样的版本

五、优势
原生App

⊙ 比移动Web App运行快
⊙ 一些商店与卖场会帮助用户寻找原生App
⊙ 官方卖场的应用审核流程会保证让用户得到高质量以及安全的App
⊙ 官方会发布很多开发工具或者人工支持来帮助你的开发

移动Web App
⊙ 跨平台开发
⊙ 用户不需要去卖场来下载安装App
⊙ 任何时候都可以发布App,因为根本不需要官方卖场的审核
⊙ 如果你已经有了一个Web App,你可以使用 responsive web design来辅助改进

六、缺陷
原生App
⊙ 开发成本高,尤其是当需要多种移动设备来测试时
⊙ 因为是不同的开发语言,所以开发,维护成本也高
⊙ 因为用户使用的App版本不同,所以你维护起来很困难
⊙ 官方卖场审核流程复杂且慢,会严重影响你的发布进程 

移动Web App
⊙ 无法使用很多移动硬件设备的独特功能
⊙ 要同时支持多种移动设备的浏览器让开发维护的成本也不低
⊙ 如果用户使用更多的新型浏览器,那问题就更不好处理了
⊙ 对于用户来说,这种App很难被用户发现

附:原生App 与 移动Web App:您如何选择?
所以在你准备做移动App时,你应该先问问自己以下几个问题:

1. 你的应用是否需要使用某些设备的特殊功能,比如摄像头,摄像头闪光灯或者重力加速器
作者:Carl Li 链接:https://www.zhihu.com/question/29178728/answer/116301711 来源:知乎 著作权归作者所有,转载请联系作者获得授权。
难道HTML5可以在大多数情况下代替原生App了吗?
这个看你要做什么了。 我最近把我们团队的 BeautyTeam(开发中的团队管理工具,类似 Teambition)AngularJS 版本做了 Ionic( Ionic: Advanced HTML5 Hybrid Mobile App Framework)的兼容。这个是开源的,可以在  GitHub - Obisoft2017/BeautyTeamAngularJS at exp 查看,我把它标注成了试验性的 branch;不过试试,至少在我这里还没有问题。 从这次移植的经验来看如果你的 target 是不需要强大性能(譬如复杂 UI)的,包含 Apache Cordova 的 Ionic 完全可以胜任。但是对于计算来讲目前的渲染引擎还稍显逊色。
另外,HTML5的性能怎么样?
不是很了解——不是专职的前端;remote 的内容受制于网速一般体验很差;本地的东西还是很可观的。
HTML5做的App还要被IDE进行一系列处理才能转换为App,是这样吗?
IDE 可以完成 debug 与打包部署发布的过程(Xcode 便是)。Ionic CLI 已经可以完成除了发布之外的大多数工作。 至于运行的话:基于 Cordova 的 Hybrid App 确实是塞到了一个巨型的 WebView 里面——你可以自己看一看导出的工程(*.xcodeproj)。React Native / Weex 则是基于 runtime / 反射机制绘制原生组件。
用HTML5开发App真的好嘛?
对于一个实际开发中缺乏 iOS / Android native 开发的团队来讲,这是一个不错的选择;如今的首选还是 native 开发。
2. 你的开发预算是多少? 3. 你的应用是否一定需要网络 4. 你的应用的目标硬件设备是所有的移动设备还是仅仅只是一部分而已 5. 你自己已经熟悉的开发语言 6. 这个应用对于性能要求是否苛刻 7. 如何靠这个应用赢利 重用户体验,面向大众市场,规格基本确定,就做app,不要动H5. 面向小众市场,就先做H5, 不要考虑优化,规格确定了想优化的时候就做app去。 作者:Carl Li
链接:https://www.zhihu.com/question/29178728/answer/116301711 来源:知乎 著作权归作者所有,转载请联系作者获得授权。
难道HTML5可以在大多数情况下代替原生App了吗?
这个看你要做什么了。 我最近把我们团队的 BeautyTeam(开发中的团队管理工具,类似 Teambition)AngularJS 版本做了 Ionic( Ionic: Advanced HTML5 Hybrid Mobile App Framework)的兼容。这个是开源的,可以在  GitHub - Obisoft2017/BeautyTeamAngularJS at exp 查看,我把它标注成了试验性的 branch;不过试试,至少在我这里还没有问题。 从这次移植的经验来看如果你的 target 是不需要强大性能(譬如复杂 UI)的,包含 Apache Cordova 的 Ionic 完全可以胜任。但是对于计算来讲目前的渲染引擎还稍显逊色。
另外,HTML5的性能怎么样?
不是很了解——不是专职的前端;remote 的内容受制于网速一般体验很差;本地的东西还是很可观的。
HTML5做的App还要被IDE进行一系列处理才能转换为App,是这样吗?
IDE 可以完成 debug 与打包部署发布的过程(Xcode 便是)。Ionic CLI 已经可以完成除了发布之外的大多数工作。 至于运行的话:基于 Cordova 的 Hybrid App 确实是塞到了一个巨型的 WebView 里面——你可以自己看一看导出的工程(*.xcodeproj)。React Native / Weex 则是基于 runtime / 反射机制绘制原生组件。
用HTML5开发App真的好嘛?
对于一个实际开发中缺乏 iOS / Android native 开发的团队来讲,这是一个不错的选择;如今的首选还是 native 开发。

猜你喜欢

转载自blog.csdn.net/qq_18048847/article/details/80332788
今日推荐