混合APP开发(原生+H5)

混合开发(Hybrid
App开发),是指在开发一款App产品的时候,为了提高效率、节省成本而利用原生与H5的开发技术的混合应用。通俗点来说,这就是网页的模式,通常由“HTML5云网站+APP应用客户端”两部份构成。
混合开发是一种取长补短的开发模式,原生代码部分利用Web
View插件或者其它框架为H5提供容器,程序主要的业务实现、界面展示都是利用与H5相关的Web技术进行实现的。比如京东、淘宝、今日头条等APP都是利用混合开发模式而成的。

**优点:

1、开发效率高,节约时间。同一套代码Android和IOS基本上都可使用;
2、更新和部署比较方便,每次升级版本只需要在服务器端升级即可,不再需要上传到App Store进行审核;
3、代码维护方便、版本更新快,节省产品成本;
4、比web版实现功能多;
5、可离线运行。**

**缺点:

1、功能/界面无法自定:所有内容都是固定的,不能换界面或增加功能;
2、加载缓慢/网络要求高:混合APP数据需要全部从服务器调取,每个页面都需要重新下载,因此打开速度慢,网络占用高,缓冲时间长,容易让用户反感;
3、安全性比较低:代码都是以前的老代码,不能很好地兼容新手机系统,且安全性较低,网络发展这么快,病毒这么多,如果不实时更新,定期检查,容易产生漏洞,造成直接经济损失;
4、既懂原生开发又懂H5开发的高端人才难找。
以上就是原生开发、H5开发和混合开发各自的优缺点。相比之下,由于现代人的个性化需求越来越明显,所以原生APP开发也越来越多

如何使用混合开发传递数据

// 判断h5在ios还是安卓
function detect(){var equipmentType = "";var agent = navigator.userAgent.toLowerCase();var android = agent.indexOf("android");var iphone = agent.indexOf("iphone");var ipad = agent.indexOf("ipad");if(android != -1){equipmentType = "android";}if(iphone != -1 || ipad != -1){equipmentType = "ios";}return equipmentType;}// 我们定义好一个 上传图片方法,放在一个公用的js文件中
function updataImg (obj,callback) {if(equipmentType == "android") {// 调用android方法,比如是android.webviewupdataJs(obj,callback)  // 浏览器不认识的方法,是安卓定义好的方法} else {ios.webviewupdataJs(obj,callback)}console.log(obj)
}

开发时如何使用混合App开发?相关推荐

  1. android开发 视图联动_Flutter混合APP开发

    混合开发简介 使用Flutter从零开始开发App是一件轻松惬意的事情,但对于某些成熟的产品而言,完全替代弃用App的历史沉淀,全面转向Flutter是不现实的.因此使用Flutter去统一Andro ...

  2. 混合app开发学习笔记

    什么是混合移动App开发[重点] 苹果上的软件是如何开发出来的:使用的是 OC.或者使用Swift这门语言 安卓平台上的软件又是如何开发出来的:使用安卓相关的语言开发的,Java,安卓的控件进行开发 ...

  3. 开发缺点_成都嗨创科技:原生APP开发与混合APP开发的优缺点对比

    原生APP开发 1.开发语言: 安卓APP:Java开发语言: 苹果APP:Objective-C 或Swift 开发语言: 均为官方规定开发语言: 2.优点 1)使用体验较好,能够实现较为复杂的交互 ...

  4. 混合App开发,HBuilder开发移动App

    使用HBuilder开发混合App: Hbuilder:是一个在线打包工具,不需要在本地配置开发环境:直接将做好的网站,通过一些简单的操作,就能在线打包为一个App: 混合APP开发常见技术:Html ...

  5. html5混合app原理,HTML5混合App开发

    内容简介 在竞争激烈的移动互联网环境下,HTML5技术一直备受关注.HTML5混合App开发与原生App开发模式之间也争议不断.相对于原生App来说,HTML5混合App开发的成本更低.周期更短,而且 ...

  6. “小程序化”,一种创新的混合App开发模式

    计算机系统集成行业作为当今比较成熟的服务业,在国内已有三十多年的发展历史. 从80年代最初的增值代理阶段发展到现如今的多平台应用和服务创新阶段,发展较为迅速. 系统集成发展至今,虽然已经取得了很大的进 ...

  7. Vue + quasar-framework进行Vue混合app开发 ─ 模拟器选择及使用(四)

    这里推荐2钟比较常用的模拟器,Genymotion和Android Studio自带的Android Virtual Device,至于喜欢用哪个就用哪个. Genymotion 需要准备下载的软件 ...

  8. 原生开发什么意思_成都APP开发:原生APP开发与Web APP开发有什么区别呢?

    智能手机上的APP应用软件对于人们来说已经成为日常工作生活当中必不可少的工具,无论是工作生活中的聊天交流,购物,饮食,出行,娱乐都会有相应的APP软件.目前常见的APP软件开发模式有两种,一种是原生A ...

  9. 北京app开发公司哪家好 北京app开发技术因素

    面对移动互联网的冲击,传统企业只有寻求产品升级和行业创新才能有出路,只有借助app开发公司的帮助,才能拥有自己的app应用软件,才能拥抱互联网..因此,很多传统企业在考虑app开发费用时,需要首先考虑 ...

最新文章

  1. C++实现输入两个整数n和m,从数列1,2,3...n中随意取几个数,使其和等于m,要求列出所有的组合
  2. select2 api参数的文档
  3. 韩国讨论到 2020 年拥抱开源操作系统
  4. nginx反向代理+缓存开启+url重写+负载均衡(带健康探测)的部署记录
  5. ASP.NET Core 跨平台图形验证码实现
  6. 常见形式 Web API 的简单分类总结
  7. [css] css怎样使每个字符宽度一样?
  8. android游戏模式,注重游戏体验 Android 12提供原生游戏模式
  9. Maven学习(八)-----Maven依赖机制
  10. 【elasticsearch】 elasticsearch document 路由 (routing) 到shard
  11. 芯片之路: 海思半导体前世今生
  12. EDEM快速填充的方法
  13. 只用一个div制作太极图
  14. 【2021年度总结】积跬步,「卷」千里,2022 继续「卷」
  15. openmv实现二维码识别与串口发送
  16. 打开浏览器默认打开hao123网站的主页怎么取消设置?
  17. C++程序设计:税费计算
  18. 什么是内存颗粒?内存条的构成!
  19. 【解决问题】在jupyter notebook上用 pandas_datareader 获取 yahoo 数据
  20. jsp与servlet数据交互出现null或???解决方案

热门文章

  1. php表单网页实例,40多个漂亮的网页表单设计实例_HTML/Xhtml_网页制作
  2. java option请求_如何在Spring Boot中处理HTTP OPTIONS请求?
  3. 【Ubuntu】16.04服务器:驱动更新+cuda11+cudnn
  4. 特殊用途光纤连接器和光缆组件
  5. 苹果cms开启vip会员收费权限教程
  6. 计算机软件水平考试分数线,计算机软件资格水平考试分数线
  7. 笔记本电脑总是锁定计算机呢,笔记本电脑怎么锁定触摸板_笔记本怎么关触摸板-win7之家...
  8. html url 转义字符,html url 转义字符
  9. python学习笔记1——(廖雪峰教程,菜鸟教程)python基础
  10. 一核心两主题,云上如何定义智能数控?