APP封装从一门开始
一门提供APP封装底层开发框架,一键在线APP封装,200+原生APP模块,2000+JS映射接口按需自助封装

使用h5进行混合app开发

H5(HTML5)是HTML最新的版本,它加强了在移动端的支援,有更好的体验、优化更适合移动端的Web应用程序。混合开发指的是在一个native的应用容器中,通过嵌入webview,将H5页面作为应用的一部分或者是全部,达到类似native应用的体验。下面为大家详细介绍H5进行混合app开发的原理。

## 1.前言

移动端开发中,App应用成为主流,而对于不依赖于硬件和系统融合的应用(如:社交、新闻、直播等),代码形式非常类似的WebView内嵌页面也成为了越来越多的选项。此时使用H5进行混合开发可以发挥特别的优势。

## 2. H5进行混合app开发原理

混合App开发,就是将Html5应用或网站包装为App可安装的形式,并在应用市场进行发布。在混合App开发中,H5页面是以WebView的方式展现的,WebView是Android系统提供的一个可直接嵌入页面的组件。WebView的好处是,可以通过非常简单的方式将H5页面嵌入到移动应用中并展现给用户,多数情况下实现的是集成HTML+CSS+JS三项技术的功能的包装。在WebView中,可以通过WebChromeClient与Js通信,完成页面功能的事件处理。

三项技术:

- Html5:HyperText Markup Language,也就是大家常听到的HTML。

- CSS:Cascading Style Sheets,是一种用于描述HTML等文档元素外观的语言。

- JS:JavaScript是一种面向对象的、动态的解释型计算机语言。

## 3.实现步骤

### 3.1 构建app内框架

针对Hyrbid App,则需要在Native应用(如IOS)上嵌入一个浏览器界面以调出具备业务逻辑运算能力的Webview。具体如何呷成需要用app框架方案,比如ReactNative,Ionic等。

### 3.2 页面管理

无论使用ReactNative还是其他框架,可以考虑采用单页面的方式进行页面之间的切换。前端也可以自主维护一套类似于路由的方案。

### 3.3 Native API调用

H5需要在Native App内调用某些原生的功能,这就存在一些安全性和可行性的问题。有专门的插件方案和原生桥接库的解决方法。常见的如Phonegap、Cordova、JPush Phonegap plugins,百度等。

举个栗子:

我们现在用的`window.location.replace`是属于JS里面的内部方法,它负责内部的页面跳转,但如果我们要访问到内部的native能力,就需要调用额外定义的API,比如第三方分享调用、拍照上传和调用原生地图等,这就需要调用到原生的能力了。很多案例使用JS将这些API封装到桥接库里面,这样调用的时候只需要执行如下代码:

```js

window.hackUtilsAPI.share({});

```

或者实际项目当中一些各种原生业务 JS 的业务复杂和难度就会大大降低。实现通信连接的方案有很多,主流的有:

1. Cocos2d-x自带的jsb库

2. WebView与native的的通讯方案

3. Phonegap的相关插件:PhoneGap在Javascript API与原生 API之间提供了一个桥接层,让HTML/CSS/JavaScript的应用程序能够访问手机的一些硬件设备和其他原生API的能力,如:Camera、Network、Acceleromete。

### 3.4 总体架构

H5与壳程序,以WebView应用为桥,两端通过协商好的方法进行数据交互,并得到原来的显著跨平台的能力。

## 4. 混合App优缺点

### 4.1 优点

- 跨平台:H5页面只需要编写一次,重新进行封装移植后即可同步在各个平台上面运行。

- 开发效率高:采用简单的html+js开发,不用像原生开发那样熟练掌握各种语言,所以开发效率提高很多。

- 更新方便:H5页面可以分离出去,单独发布,方便修改和发布,节省了重复编译和重新发布整个App的时间和流程。而原生更新完需要等待市场审核,并上线更新。

- 用户变现:使用H5页面进行混合开发时,可以通过增加广告或与项目的合作赚钱,发挥H5页面自身变现的优势。

- 兼容性较好:HTML5 的语法编写很多兼容性的方便处理,而且浏览器普及度也非常的高,可兼容性一般不会有问题。

### 4.2 缺点

- 用户体验和性能不如原生:H5页面在WebView内进行展示,与native程序进行比较出现各种问题,比如滑动卡顿,CPU占用率高,启动速度慢等。

- 编写难度较大:相比原生来说编写难度较大,前期难度很大。

- 安全性差:H5页面的开源和发布过程导致安全性差。

- 打包时开销增加:混合app需要在原生语言的基础上嵌入一些其他库以供使用,造成app包体积增大。

## 5. 总结

H5进行混合app开发,相比原生开发具有一系列的优势和劣势。在实际操作中,我们需要对当前项目需求做出完善的分析和需求,来选择最优的开发方式和工具。H5进行混合app开发虽然整体难度大,但适用范围广,开发效率高,适合一些轻度交互和动画类的应用,可以减小视频体量,同时业务逻辑不复杂的项目。总


相关知识:
怎么把h5游戏做成app
在现代移动互联网的发展中,由于移动设备的不断升级和网络技术的不断拓展,H5游戏作为一种轻量级游戏形式,获得了越来越广泛的应用和推广。然而单纯的H5游戏在移动设备上的体验往往不尽人意,这时候开发一款H5游戏App将成为第一个考虑的选择。本文将介绍如何将H5游
2023-05-26
哪个app做免费h5模板
H5模板是一种用于制作网页的模板,通常被称为基于HTML5的模板。H5模板通常包括HTML,CSS和JavaScript的代码文件,它们共同负责网页设计和交互效果的实现。使用H5模板可以快速搭建网站,并且不需要熟悉编程语言的使用,因此它们非常适合没有编程经
2023-05-26
免费制作h5游戏app
在当今移动互联网飞速发展的时代,H5游戏已经逐渐成为了一个热门话题。与传统的PC端游戏不同,H5游戏可以直接在浏览器中运行,无需下载安装,更加方便、易于推广。那么,如何利用现有的工具免费制作一款H5游戏APP呢?下面将为大家详细介绍原理和步骤。## 一、原
2023-05-26
基于h5开发仿大众点评app
大众点评是享誉全球的餐饮服务平台,拥有海量用户,无论在用户规模还是使用频率上都可以称得上是业内的佼佼者。为了提供更加丰富的服务和更加便捷的用户体验,大众点评也推出了自己的app版本。而app也成为现在人们最主要的上网方式之一,那么如何开发仿大众点评app呢
2023-05-26
初识h5开发混合app
H5开发混合App,简单来说,就是使用HTML5、CSS3、JavaScript等技术实现移动应用的开发,同时结合了原生应用程序的特性,因此也被称为混合应用程序。原理混合App的实现原理是通过WebView控件来实现。WebView是Android和iOS
2023-05-25
h5页面制作app下载
在移动互联网时代,手机应用程序的需求越来越大,尤其是对于一些小型企业或个人开发者来说,为了推广自己的品牌或产品,制作一款APP成为一种极其有力的手段。但对于小型企业或个人开发者,砸锅卖铁一样高昂的开发费用和运营成本是不可承受的,所以,如何以最低的成本制作出
2023-05-25
h5生成手机app
HTML5技术越来越成熟,可以称之为网页技术的最新之作。而基于HTML5的手机App制作,已经成为了手机应用开发的重要方向之一,它具有快速、经济、跨平台等特点,成为越来越多开发者的选择。那么,如何利用HTML5技术来制作手机App呢?一、HTML5与Pho
2023-05-25
h5能做到和app一样流畅吗
HTML5是一种Web技术标准,它通过浏览器实现展示和执行的操作。相较于原本需要使用插件等方式才能实现的高级功能,HTML5拥有丰富的功能和特性,包括动画、音频、视频等等。不过,在移动设备上,HTML5应用程序它是否能够达到与原生应用程序相同的流畅度呢?我
2023-05-25
h5混合跨平台移动app开发
随着移动互联网的发展,跨平台移动app开发成为了热门话题。目前市场上有很多跨平台移动app开发框架,比如React Native、Ionic、Flutter等,但H5混合跨平台移动app开发也逐渐引起了人们的关注。那么,什么是H5混合跨平台移动app开发呢
2023-05-25
h5混合app用什么工具开发
近年来,随着互联网和移动互联网的快速发展,越来越多的企业开始关注H5混合开发模式。H5混合开发是指通过H5技术开发出的Web App来模拟原生App环境,实现原生App的一些功能,比如推送、支付、定位、地图等,并能够通过JS和原生代码进行交互,从而提供更好
2023-05-25
h5封装app防跳转浏览器
随着移动互联网快速发展,越来越多的网站和应用开始开发H5页面,以满足移动端用户的需求。而在这个过程中,一个比较常见的问题是,H5页面在应用中打开后会跳转到系统默认的浏览器中,这对用户体验造成了一定的影响。为了解决这个问题,可以考虑封装app防跳转浏览器。原
2023-05-25
h5 开发 app
HTML5是新一代的HTML标准,支持多媒体和交互方面的改进,可帮助开发人员构建更好的网站和web应用程序,同时使用HTML5还可以开发桌面和移动应用程序。这就是说,HTML5技术和移动应用程序的发展紧密结合,可以成为构建跨平台应用程序的有力工具。在移动应
2023-05-25
©2015-2021 一门APP yimenapp.com  川公网安备 51019002001185号 蜀ICP备17005078号-3