Hybrid浅谈

关于Hybrid浅谈


前言

现在使用HTML5开发app好像慢慢成为了一种趋势, 其中比较主流的模式Hybrid AppReact Native开发。

简介

Hybrid App(混合模式移动应用)是介于Web-AppReact Native间的一种开发模式,兼具了Native App良好的用户交互体验的优势和Web App跨平台开发的优势

React NativeFacebook开源的框架,可以直接用Javascript开发原生的APP,并不使用WebView,这里就不详谈了。

分析

Hybrid App优点:

效率高 -----------html5写界面的速度比native快多了

跨平台 -----------移动端只要使用WebView装载就OK了

低成本 -----------没有学习成本,不需要学习新语言,只需要前端和移动端

Hybrid App缺点:

体验比不上Native,甚至不如React Native。

只适合做重展示轻交互的功能。

依赖于WebView,而Android WebView的设计简直坑爹。

设计

交互设计是Hybrid开发的重中之重,如果这块设计不好会让你后面痛不欲生。

交互接口 -----------NativeUI组件的调用,系统、设备等信息读取的接口。Native与Html5互调以及回调。

资源访问 -----------Native首先要考虑如何访问H5资源,做到既能以file的方式访问Native内部资源,又能使用url的方式访问线上资源;需要提供增量更新机制,摆脱APP迭代发版问题,避免用户升级。这里会涉及到静态资源在APP中的存放策略,更新策略的设计,需要服务器端的支持。

开发调试 -----------功能设计并没有完,如果WebView加载html交互出了问题,到底是Native的问题还是Html的问题,中间哪里出了bug。

Hybrid交互原理

App调H5 -----------将一组API绑定在WebView的window对象上,App通过原生方法调用window对象中的js方法

H5调App -----------App实现对WebView URL的观察者模式,H5通过改变URL的哈希值使得App察觉并解析URL执行对应的操作。或者使用Android自带的方式,使用addJavascriptInterface方法提供一个对象给JS调用。

总结

Hybrid开发或许不会成为主流,但绝对是提高效率、降低成本的选择。

感言

这算是我第一篇正式的博文了,其实早就有写博客的想法,只是这种原因。。。。。。其实总结起来就是懒,啊啊啊!!!后面会坚持写下去的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,603评论 25 709
  • 我写了100个小说的标题的开头和自由诗。也都写不到结尾。那一堆都是我遇见的人和故事,却都没有我的痕迹,我连阿猫的那...
    yohooooo阅读 1,677评论 0 0
  • 我大三了。 早上分别在七点、七点零五、七点十分、七点十五被闹钟震醒,闭着眼睛下床,抓起脸盆和热水壶冲向盥洗室——请...
    九娘阅读 2,312评论 0 2
  • 但是不动脑子的时候,就会让你越来越感觉自己像一个废人 现在很多年轻人都是社会主义的一颗螺丝钉,一直以来以穷也特色。...
    茂行先生阅读 2,865评论 0 0