H5能取代移动app(Android和iOS)吗?

大量新生移动设备的兴起,改变了互联网的未来。在技术的发展上, HTML5 会取代 App 应用吗?或者说能够在多大程度上取代呢?在 HTML5 规范中,已经加入了相机、磁力罗盘、 GPS 信息的支持。很多新兴浏览器也已经开始支持这些新特性。能否用一个统一的 HTML5 来替代 android ios 并行开发的双重成本呢?

移动应用程序 (App) HTML5 都是目前最火的技术,二者之间也有不少重叠之处。在移动设备浏览器里运行的 html5 web 页面,也可以重新打包成不同平台上运行的 app 。目前很多浏览器都有很好的跨平台支持, HTML5 web 方案,对开发者来说更为方便。完成一次,即可多平台使用。但这确实可行吗?仍然有许多必要原因,使得开发者选择了 app 开发。很明显,很多人已经在这么做了。

功能丰富上

很多原生 app 实现的功能是 HTML5 望尘莫及的。不管你的 web 做的再牛,如果停留在一个没有摄像头支持的沙盒中,很多场合还是玩不转。幸运的是,现在没有这样的沙盒限制了。如果你需要你的 web 照相片,可以做一个负责照像的 app ,再把你的 web 打包进这个应用里面。

但这种混合开发的问题在于,增加了复杂性,而且不象传统 web 那样可以直接在浏览器里运行。这个问题短时间内恐怕没辙。好在现在网络标准在不断的高速扩充,先进的浏览器也在一直跟进。 Android 3.1 已经支持 camera 了。 iOS 浏览器也支持 WebSocket 和设备方向检测了。

总得来说,移动设备在发展,而 web 也同样在快速变化。桌面浏览器本身,有 5 家主要浏览器开发商在改进现有标准,丰富新的功能。所以原生 App 在快速前进,同时, web 也在缩小差距。

开发上

原生 APP 使用强壮的程序语言( Java, Objective C, C++ )。适合写复杂程序,经过历史验证, API 丰富。在桌面环境可以方便的用模拟器测试。而 Web 程序的 runtimes 和乱七八糟的各路浏览器让人头大

用户体验上

用户希望在你的程序里,用与系统连贯统一的方式来操作。不同的平台,都有一些约定俗成的习惯。比如长按按钮会有啥反应。你不能指望用一套统一的 HTML5 App 去满足所有用户。此外,整个平台的操作感受都由用平台自有的软件库协调。直接调用平台工具包就能直接免费获得完整支持。

测试上

app测试 H5 测试来说,就测试项并没有什么区别,主要都是终端机的配饰问题,但一样的是, app 有安装、启动等步骤,相对简单。但在 UI自动化测试 ,功能遍历测试并没什么不一样。

总结

现在还看不出完胜的一方。有些应用适合做 app ,有一些适合用 html5 。目前的情况,原生 APP 肯定是一个很重要的选择。上面提到的混合式开发,可能是一个不错的妥协方案。能用 web 的时候用 app 调用 web web 实现不了的功能用 app 开发。

全部评论
其实都一样 大厂主要就是开发业务逻辑 开发框架和开发语言其实是无感的
点赞 回复 分享
发布于 2018-07-13 10:43
同步发展,但应该谈不上取代。
点赞 回复 分享
发布于 2017-04-27 18:00
很多大公司都用混合开发的了
点赞 回复 分享
发布于 2017-04-24 19:19
想太多
点赞 回复 分享
发布于 2017-04-24 18:53

相关推荐

想踩缝纫机的小师弟练...:不理解你们这些人,要放记录就把对方公司名字放出来啊。不然怎么网暴他们
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务