H5和原生app哪个好?

来源:互联网 发布:长沙源码信息骗局 编辑:程序博客网 时间:2024/03/29 22:27
对于H5 和原生app的优缺点回答:
我现在项目现在用的就是:Andriod和IOS相当于容器, 主要复杂的业务逻辑还采用原生,已经有的子模块 需要快速集成进来,或者需要快速上线的模块,原生组没有人力,所有选择了集成H5,只要写一套代码就可以实现在Andriod、ios甚至微信里运行。不过我觉得,H5比较适合活动页,交互少的页面。含有复杂的逻辑的话,特别是需要跟壳交互很多(恶心的后退逻辑,判断版本号,隐藏头部),我建议后期还是要替换成原生。
所以:H5的优点显而易见。上的快,成本低,发布版本也不需要走审核。就这个成本问题和很快就能上问题就吸引项目老大了,再加上每次需求宣讲,产品要快点上,原生组推锅,我们只能当接盘侠了,毕竟这个模块本来就在我们这。


H5的缺点很多,最主要是性能问题, 第一:肯定做不到原生那么流畅。动画这块,没有原生流畅,效果很难模拟,然后动画的优化(translate3d开启GPU渲染等) 本地缓存这快,不优化的话,js、css、img每次打开都要重新获取,体验差且耗流量。所以图片多的话建议缓存到本地  第二:网络问题 ,一断网就呵呵了,只能依靠壳检测网络,如果页面打开后断网,h5不知道已经断网了 第三:功能问题,很多系统的功能无法调用,必须app壳给我们提供调用的接口 ,比如硬件摄像头、陀螺仪、麦克风等硬件支持较差,频繁调用这些硬件  


爽了原生开发者,给H5开发的困难:第一:调试困难,不像web里调试那么方便,调试工具可选fiddler。我曾经使用新特性localstorage,无奈壳不支持啊,然后各种和原生那边人联调,恶心的一笔。 最坑的是兼容性问题。各种想不到,那次最后已经调成功了,发现个缺陷坑爹,登录某个账号就会出现问题,甚至页面打不开换手机也不行,就那个账号异常,最后发现兼容性问题,页面里使用了iframe。是这样的,作文列表很长使用下拉分页,然后点击某一条进入作文全文页面,这个是iframe嵌入的,为什么选择使用iframe呢,因为壳不支持缓存页面信息,比如列表我滑到第100页,然后跳转作文全文页面,后退回来还要在这个位置,如果web端很简单,浏览器会帮你记住。但在这个H5里不行,所以我只能用iframe模拟,每次点击后请求数据再渲染iframe。问题在这,为啥有的账号就是异常呢,其它都好的,原来还要先清空再填充。按理不会存在问题的。继续说兼容性,andriod和ios很多表现不同,ios可坑了,比如事件委托。还做过h5里一个按钮的拖拽,性能差不说,在ios里位置也有问题。再比如fixed支持不好,再比如有时候一个头部莫名其妙不出现。


我看微信和支付宝、美团里用了好多H5页面,没接触这个概念之前你可能都不知道它不是原生,因为优化的确实很棒,比如左右滑动等,在一个应用里可以集成那么多子应用。所以我建议:太复杂的用原生,活动页等用H5.
1 0
原创粉丝点击