app h5

iOS宣布在2020年3月全面下架混合app
原生应用(native application,简称 native App)
优点:

1)较好的性能和体验;(2)可以使用系统的所有硬件和软件 API,比如 GPS、摄像头、麦克风、加速计、通知推送等等,能充分发挥系统的潜力。

缺点:

不夸平台成本高;开发和调试成本相对较高,时间周期长;必须下载安装才能使用,只要升级版本,就必须重新下载安装。用户往往不愿意更新版本,厂商被迫不得不长期支持很久以前的旧版本。

Web 应用(web application,简称 Web App)
优点:

(1)不需要下载安装,打开浏览器就能使用,而且总是使用最新版本;(2)对于开发者来说,Web App 写起来比较快,调试容易,不需要应用商店的批准就能发布。

缺点:

浏览器提供的 API(即 Web API)很有限,大部分系统硬件都不能通过网页访问,无法充分利用平台的硬件;通过浏览器渲染,性能不如原生 App,不适合做性能要求较高的页面;用户必须记住如何导航到它

Web App 可以覆盖更多的用户
原生 App 的用户使用时间(188分钟)远超 Web App(9分钟)

Chrome 团队开发了新技术"渐进式 Web App"(Progressive Web App,缩写 PWA)。它可以把网站缓存在手机里面,供离线时使用,还能在手机首屏生成图标,直接点击进入,并且有通知推送能力,也不带有浏览器的地址栏和状态栏,跟原生 App 的使用体验非常接近。
混合应用(hybrid application,简称 hybrid App)

壳是原生 App,但是里面放的是网页;
混合 App 里面的网页不同于普通网页,可以调用底层系统所有的 API。奥秘就在于外层容器提供了 API Bridge,充当底层 API 的中介,允许内部的网页调用底层。
主流: PhoneGap、Cordova、Ionic

缺点:

由于存在网页引擎的中间层,所以性能比较欠缺,不仅不如原生 App,而且由于 WebView 不是全功能浏览器,可能比 Web App 都要慢一些;由于页面跨平台,就无法使用只有特定平台提供的功能,导致体验不如纯的原生 App。

H5 这个词,可以理解成就是混合 App 模型,只不过它特指混合 App 的前端部分

小程序

针对特定容器的 H5 开发。微信本身是一个容器,开放自己的接口(JSbridge)

跨平台 App 技术栈 (cross-platform technology stack)

不使用 Web 技术
包括:React Native、Xamarin、Flutter

Flutter

Flutter使用Dart语言开发,Dart可以被编译(AOT)成不同平台的本地代码,让Flutter可以直接和平台通讯而不需要一个中间的桥接过程,从而提高了性能。

优点

A、混合开发中,最接近原生开发的框架;
B、性能强大,流畅;
C、优秀的路由设计;
D、优秀的动画设计;
E、简单易学,Dart语言更具优势;
F、跨多种平台,减少开发成本;支持插件,可以访问原生系统的调用。

缺点

A、脱离不开原生,开发人员需要具备原生(Android、iOS)基础开发能力;
B、适配问题,开发工具版本升级后,修改量大;
C、原生集成第三方SDK后,兼容性适配是个令人头痛的问题;
D、代码可读性较差,对代码质量和管理要求较高;
E、Widget的类型难以选择,糟糕的UI控件API;
F、Flutter packages和Dart packages上第三方sdk繁杂,适配性差,不可乱用;
G、目前几乎没有第三方开发者平台开发Flutter能力的SDK,需要原生去集成;
H、打包后,apk/ipa要大很多。

通常情况下,App 内部会使用 WebView 控件作为网页引擎。这是系统自带的控件
《没有银弹:软件工程的本质性与附属性工作》

参考:https://www.jianshu.com/p/b7f457e492c3
http://www.ruanyifeng.com/blog/2019/12/hybrid-app-concepts.html
http://www.ruanyifeng.com/blog/2019/12/mobile-app-technology-stack.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Uni-app是一种基于Vue框架的跨平台开发工具,可以同时开发小程序、H5App等多个平台的应用。而当我们在使用Uni-app开发H5应用时,有时可能会遇到403错误。 403错误是指服务器拒绝了我们的请求,意味着我们没有权限访问某个资源。这个错误通常是由于以下几个原因造成的: 1. 服务器设置了访问限制:这意味着服务器对我们的请求进行了权限认证,但我们没有提供有效的凭证或凭证无效,因此被服务器拒绝。这时,我们需要检查我们的认证信息是否正确或者获取有效的凭证。 2. 权限不足:有些服务器会对特定的资源或目录设置了访问权限,如果我们的身份或权限不足以访问该资源或目录,就会出现403错误。这时,我们需要联系服务器管理员或提供足够的权限来访问。 3. IP黑名单:有些服务器会根据IP地址进行访问拦截,如果我们的IP地址被服务器列入了黑名单,就会被拒绝访问。这时,我们可以尝试通过其他网络环境访问,或与服务器管理员联系解决。 解决这个问题的方法有: 1. 检查认证信息:确保我们的认证信息是正确的,例如用户名、密码、API密钥等。 2. 修改访问权限:如果是权限不足导致的403错误,我们可以联系服务器管理员或提供足够的权限来访问。 3. 检查IP地址:如果我们怀疑是IP地址被列入黑名单导致的403错误,可以尝试使用其他网络环境访问,或联系服务器管理员进行解决。 总结起来,Uni-app H5出现403错误通常是由于服务器拒绝了我们的请求,可能是认证信息错误、权限不足或IP地址被列入黑名单等原因导致的。解决方法包括检查认证信息、修改访问权限和检查IP地址等。具体解决方案还需根据具体情况进行调试和处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值