WebApp与原生App介绍

原生App

在智能手机上允许的App应用程序有NativeApp(基于本地操作系统运行)和WebAPP(基于手机浏览器运行),其中Native App就是原生App的意思,所以原生App开发也就是指基于本地操作系统的App开发服务。如今市面上多数的App软件开发都是使用的原生程序编写的应用程序,也就是说大部分的手机App属于原生App应用软件。

原生App访问和兼容的能力比较好,可以支持在线或者离线消息推送或是进行本地资源访问,以及摄像、拨号、蓝牙、功能的调取。原生App开发有很多的优势,如原生App是针对不同的平台为用户提供不同的体验、原生应用可以节约宽带成本、访问本地资源、打开的速度更快并为用户提供最佳的用户体验和优质的用户界面等。

WebApp

Web App是一种框架型APP开发模式(HTML5 APP框架开发模式),具有跨平台的优势,该模式通常由“HTML5云网站+APP应用客户端”两部分构成,APP应用客户端只需安装应用的框架部分,而应用的数据则是每次打开APP的时候,去云端取数据呈现给手机用户

原生App和Web App对比

1.开发方面

原生APP:每一种移动操作系统都需要独立的开发项目,iphone版本、Ipad版本、安卓版本。每种平台都需要独立的开发语言。Java(Android),Objective-C(iOS)等等。需要使用各自的软件开发包,开发工具以及各自的控件。开发成本高、开发速度慢、维护成本高。三个平台(IOS、安卓、windows)的规则、推广、运营都不相同。官方应用商城对APP上线审核流程比较复杂而且很慢,会严重影响APP的发布上线。

Web App:因为运行在移动设备的浏览器上,所以只需要一个开发项目。可以通过HTML、CSS或者JavaScript来进行Web App的开发。开发成本低、开发速度快。

2.功能方面

原生App:原生APP是一个系统性的应用程序,可以类比于电脑上的软件。原生app可以调用移动终端的硬件设备,比如:麦克风、摄像头、短信、GPS、蓝牙、重力感应等。实现功能丰富

Web App:Web APP可以类比于电脑上的网页。Web APP更多是页面展示类的APP。只能使用有限的移动硬件设备功能。更多用于页面展示,侧重于简单的交互,无法使用很多硬件设备独特的功能。

3.应用安装使用方面

原生App:需要通过应用商店将原生app下载到手机上或移动终端上。以独立的应用程序运行。用户必须手动去下载安装这些原生App,原生应用可以节约宽带成本,可以访问本地资源、缓存。

Web App:通过移动设备上的浏览器访问,软件更新只需要更新服务器就够了,用户层面不需要做任何操作。不需要安装客户端,可以节省手机终端的内存空间。

4.版本控制方面

原生App:用户可以自有地选择是否更新软件版本,所以会出现不同用户同时使用不同版本的情况。同时也会导致维护成本比较高。使用旧版本的用户无法体验新版本的完成功能。

Web App:所有的用户都是用同样的版本,所有用户获得的功能都是相同的。版本更新比较方便,直接在服务器侧更新数据即可。一个功能做好了就能上线,一天更新几十次都毫无压力。如果客户端只是哥浏览器,那一切都会变得很简单。另外web统一性高,跨平台使用时开发量少。由于其入口不明显(浏览器导航或者随意点击链接进入),让用户记住的门槛也随之拔高,每次推广导入的流量都可能沦为一次性努力,用户留存率低。

5.加载速度方面

原生App:原生APP由“云服务器数据+APP应用客户端”两部分构成,APP应用所有的UI元素、数据内容、逻辑架构安装在手机终端上。访问的时候,不需要重新下载加载应用页面架构,只需要加载数据即可。所以加载速度更快,页面响应更快。

Web App:而Web APP打开一个页面,都需要重新加载页面的所有元素,访问速度受手机终端性能和网络环境的限制,导致加载速度慢,而且操作频繁容易卡死。

 

WebView概述

Android WebView在Android平台是一个特殊的View,它能用来显示网页,这个WebView类可以被用来在app中仅仅显示一张在线的网页,当然还可以用来开发浏览器。

WebView内部实现是采用渲染引擎(WebKit)来展示view的内容,提供网页前进后退、网页放大、缩小、搜索等功能。

WebView是一个基于WebKit引擎、展现Web页面的控件,Android的WebView在低版本和高版本采用了不同的WebKit版本内核。

简单的说就是这个组件可以使软件中显示在线网页,如果组件丢失或失效,软件就无法在其界面中显示在线网页所以导致了闪退。

WebView基本使用

//WebView显示外部网页
webview.loadUrl('http://slashdot.org');
//WebView加载本地资源
webview.loadUrl('file:///android_asset/test.html');
//WebView显示html语句
String summary="<html><body>You scored<b>192</b>points.</body></html>";
webview.loadData(summary,'text/html',null);

WebView使用场景

常用在一些交互比较少,变化比较快的场景:电商活动页面。

它是ui专门设计(和操作系统风格无关)

H5页面和Native进行交互

混合开发的App(Hybrid App)就是一个在App中内嵌一个轻量级的浏览器,一部分原生的功能改为H5来开发,这部分功能不仅能够在不升级App的情况下动态更新,而且可以在Android或iOS的App上同时允许,让用户的体验更好又可以节省开发的资源

当一个H5页面上有一个按钮或链接,我能不能够跳转到Native App的某个页面;比如我点了H5页面上的分享按钮,我能不能调用Native App的分享功能;比如在页面正在加载的时候能不能获取Navtive App的用户信息等等。

一般来讲,我所知道的两种主流的方式就是

  1. js调用Native中的代码
  2. Schema:WebView拦截页面调跳转

第二种方法实现起来很简单,但是一个致命的问题就是这种交互方式是单向的,H5无法实现回调。如果需要变得复杂,假如H5需要获取Native App中的用户信息,那么最好使用js调用的方式。例如:我们通过淘宝客户端进入天猫的h5页面购物,在这种情况下,我们就需要webview页面获取登录用户的信息

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: HBuilderX开发商城App案例是一种基于HBuilderX开发工具的商城应用程序。该应用程序可以在多个平台上运行,包括iOS、Android和Web。它提供了许多功能,如商品展示、购物车、订单管理、支付等。开发商城App案例需要掌握HTML、CSS、JavaScript等技术,同时还需要了解移动端开发的特点和规范。通过HBuilderX开发商城App案例,可以快速构建一个功能完善、用户友好的商城应用程序。 ### 回答2: HBuilderX是基于原生IDE的HTML5开发软件,支持多种前端框架。使用HBuilderX开发商城App可以提高开发效率和工作效率,快速实现商城App的开发和上线。本文将以HBuilderX开发商城App为案例,介绍HBuilderX的开发流程和具体实现。 首先,在HBuilderX中打开一个新项目,选择App模板,设置相应的项目名称、包名、应用图标等。在工程目录下添加相应的HTML、CSS、JavaScript等文件。然后,选择合适的框架,比如Vue.js或者React Native等。框架中已有的UI组件可以节省一些开发工作量。 接着,配置并连接后端API接口。商城App需要后端API做支撑,通过API与数据库进行数据交互并返回给前端展示。可根据需求选择RESTful API或GraphQL等。其中,RESTful API是一种Web API的设计方式,让API为系统不同部分之间的数据交流提供方式的标准化方法。GraphQL是一种用于API的查询语言,旨在提高API查询效率和灵活性。 然后,开始编写商城App的页面。商城App通常包含的功能有:商品展示、购物车、订单查询、个人中心、支付等。需根据UI设计师提供的UI图进行页面布局和样式设计。在完善商城每个功能页面时,还需编写对应的交互脚本,实现页面跳转、动画效果、数据请求等功能。 最后,对商城App进行测试和发布。需进行测试,检查商城App的各个页面功能的实现和是否出现了常见的问题,如闪退、卡顿等。测试成功后,商城App可以发布到应用商店或者自己的服务器上,供用户下载和使用。 总之,使用HBuilderX开发商城App可以让开发者更高效地开发App,帮助企业降低开发成本和提高产品品质。 ### 回答3: HBuilderX是一个非常好用的前端开发工具,它可以帮助开发者快速构建移动端应用。在HBuilderX中,我们可以使用多种开发语言,包括HTML、CSS和JavaScript等。特别是它内置了uni-app框架,可以帮助我们更快速地开发高质量的移动应用。 在开发商城App的案例中,HBuilderX的优势体现的非常明显。首先,我们可以使用uni-app的开发模式,通过一套代码实现多端运行,包括Android、IOS和H5等多个平台。这样,我们无需重复开发多个版本的应用,极大地提高了开发效率。 其次,HBuilderX还提供了十分丰富的UI组件和插件,可以帮助我们快速地构建商城应用所需要的UI界面。我们只需要选择合适的组件进行拼装,就可以轻松实现商品列表、搜索、购物车、下单等功能。 另外,HBuilderX还支持实时预览和调试,这使得我们对应用的开发和调试能够更加顺利。我们可以在本地搭建开发环境,随时通过预览功能了解应用的运行情况,以及及时对代码进行修改和优化。 总之,HBuilderX的强大功能和易用性,为开发商城应用提供了很多便利。不但可以提高应用开发的效率、降低开发成本,还可以保证应用的性能和稳定性,让用户得到更好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前路茫茫——何处无香

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值