何为Web App,何为Hybird App
这些概念听起来很火,当下也很流行,真正理解起来却并非易事。如果让我来全面的解释Web App和Hybird App,我觉得还有些困难。
这篇文章只是我深入了解移动领域开发过程中的不断整理和总结,其中涉及到很多概念,观点,个人的看法,有不确切的地方,欢迎指正。
阅读这篇文章,您将了解到
移动网站版本现状
Web App 出现
web app由wap站发展而来
Web App 与移动站点区别
web app 与native区别
Hybird App 出现
更新与性能的矛盾
参考
移动网站版本现状
为了满足不同用户需求,移动网站一般分为3个版本 简版,触屏版,脑版。触屏版大多启用html5开发。笔者认为电脑版基本在手机端不可用。
以下是几个大公司的移动版本比较。
简版 |
触屏版 |
电脑版 |
凡客 |
||
简版 |
触屏版 |
电脑版 |
去哪儿 |
触屏版 |
电脑版 |
大众点评 |
触屏版 |
普通版 |
当当网 |
触屏版 |
普通版 |
单纯点说,触屏版专为大屏幕的触屏手机设计,而彩版在传统智能机上应用也很多。
从技术上讲现在常见的手机网站,所谓的触屏版很多都是以html5开发的了;而所谓的彩版WAP网站,普遍是基于WAP2.0开发的;在技术上,两者就不是一个层面。
因为开发技术的不同,让触屏版通常拥有更好的视觉效果及交互方式。这点在控件的使用上尤其明显。由此也有引出两者设计风格的区别。
Web App 出现
web app由wap站发展而来
AppCan 为Web App的定义是:
打包您的wap网站入口并生成应用,用户安装应用后无需输入网址,点击击图标直接访问你的网站。
如果在AppCan上创建一个Web app ,只需输入一个网址就会生成一个安装在手机上的应用,实际上是内部对网站做了一层包装,以快捷方式的形式访问移动网站。
笔者认为这只是对web app的初步理解,这样直接转换的可用性也很差,大多是字体严重变小等问题。
资料说
百度SiteApp是致力于为开发者、站长提供从生成WebApp到流量、用户引入再到变现的综合服务平台,亦是国内首家的WebApp在线生成服务平台。
http://jingyan.baidu.com/article/4f34706e8ae529e387b56dd5.html 这里有一篇SiteApp制作步骤,看完以后,我直接理解为用户还是需要输入域名才能访问这个webapp!
优点:企业的开发成本低
弊端:这个app的入口与网址有关,不利于输入和发现。
不过百度把这个siteApp服务划分到LightApp模式的一种,与其并列的还有 Clouda服务和AppBuilder服务
Web App 与移动站点区别
笔者认为在实际应用中,客户是不会严格区分到底是移动网站还是webapp的,这和设计风格,实现功能密切相关。移动网站会无限趋近于webapp
Web App 与native区别
Web App 与native本质区别是 Native App是独立的可执行文件,直接与操作系统进行联系,Web App则在浏览器里面运行,通过浏览器引擎与操作系统通信。
主流的浏览器引擎:
WebKit 是一种浏览器引擎,支撑着 iPhone 内的 Mobile Safari 浏览器以及 Android 内的浏览器背后的技术。WebKit 也在其他的移动环境内有自己的用武之地,但是我们还是将我们的讨论一般集中于 iPhone 和 Android 平台。
浏览器本身是可直接访问操作系统API的一种Native App,但是只有数量有限的这些API向浏览器里面运行的Web App公开。
虽然Native App可以完全访问设备,但是许多特性只是部分可供Web App使用,或者根本不可使用。预计这种情况在将来会随着HTML的改进而改变,但是如今的移动用户无法使用这些功能。
Hybird App 出现
介于WebApp和NativeApp模式之间的一种应用,现在越来越觉得百度提出的Light App就是基于这种模式的变种,看看百度的定义:
即轻量级应用,是一种基于平台级手机客户端而产生的服务;开发门槛低、占用系统资源少;体验优于 Web APP,比 Native APP 轻但能实现等同 Native APP 的丰富功能和精致交互体验
还有一个观点:
我们曾多次提及微信的公众账户就是一个简易的 APP,而整个微信则变身一个简易的 APP Store。而做入口,做平台是巨头们一贯的思路,显然百度也想通过 Light APP 重塑百度客户端的入口和平台地位,变身移动 APP Store
个人感觉百度推出这个Light App对于开发者的分发渠道途径,也不会提高到哪里。和当初的网页集成应用类似。像内置的嘀咕打车,58同城,都是公司之间深入的合作,普通开发者应该没有这样的能力和机会。
更新与性能的矛盾
相比于webapp,hybird app 把Web代码封装到App里面可以提高性能和可访问性,但是不允许远程更新。性能有一定保证,更新还是要走app store。
笔者之前做移动网站时 曾经考虑多大程度的使用js,主要因素就是js库对网络环境的依赖,实际上如果是hybird应用,可以认为整个js库是封装到本地的,这样就减少了对网络环境的依赖度。
注意:以上所说的hybird app区别于Light App,比较出名的hybird app有淘宝客户端App
以上是文章的所有,如果觉得我的文章稍微有些价值,就推荐并留言讨论吧
参考
http://www.tudou.com/programs/view/8OQEq1pntVs/
浏览器引擎WebKit一统江山
http://www.36kr.com/p/201330.html
百度将推出Light APP快速生成工具、分发机制和运行平台
何为Web App,何为Hybird App的更多相关文章
- 开发框架-APP:Hybird App
ylbtech-开发框架-APP:Hybird App Hybrid App(混合模式移动应用)是指介于web-app.native-app这两者之间的app,兼具“Native App良好用户交互体 ...
- HyBird App(混合应用)核心原理JSBridge
目录 app分类 HyBird App(混合应用) JSBridge介绍 优势及应用场景 JsBridge的核心 1.Web端调用Native端代码 1.1 拦截URL Schema 1.2 注入ap ...
- Web App, Native APP,Hybird App 介绍
一.Web App 这个主要是采用统一的标准的 HTML,JavaScript.CSS 等 web 技术开发. 用户无需下载,通过不同平台 的浏览器访问来实现跨平台, 同时可以通过浏览器支持充分使用 ...
- Cordova+ionic 开发hybird App --- 开发环境搭建
Cordova 开发hybird App 开发环境搭建 一.一些基础概念: Ant : 简单说来可以这么理解,如果你用记事本写JAVA程序,然后在cmd里输入javac命令编译它,但是有一天你发现每次 ...
- 用ionic快速开发hybird App(已附源码,在下面+总结见解)
1.ionic简介 ionic 是用于敏捷开发APP的解决方案.核心思路是:利用成熟的前端开发技术,来写UI和业务逻辑.也就是说,就是一个H5网站,这个区别于react-native,native.即 ...
- hybird app混合开发介绍
一 概念 1 Hybird App,是用现有前端(html,js,css)技术来开发的app.特点:1 灵活(开发灵活 ,部署灵活) 2 拥有类似原生的性能体验. 2 不是h5页面,也不是在webvi ...
- native app、web app、hybrid app、react-native 区别
Native App:指的是原生应用程序,一般依托于操作系统,有很强的交互. 技术:Objective-C Java Native App开发的优点 提供最佳的 户体验 拥有系统级别的通知或提醒 可以 ...
- Hybird App(一)----第一次接触
App你知道多少 一 什么是Native App 长处 缺点 二 什么是Web App 长处 缺点 三 什么是Hybrid App 长处 缺点 四 Web AppHybrid AppNative Ap ...
- Hybird App ( 混合模式移动应用)开发初体验
最近1,2个月一直都尝试开发一款Hybird app,遇到了很多问题,谈谈自己的体会. Hybird app (混合模式移动应用),它利用例如安卓端webview组件+HTML5内嵌的方式混合的方式开 ...
随机推荐
- 利用BeanUtils.copyProperties 克隆出新对象,避免对象重复问题
1.经常用jQuery获取标签里面值val(),或者html(),text()等等,有次想把获取标签的全部html元素包括自己也用来操作,查询了半天发现$("#lefttr1"). ...
- CSS3: box-sizing & content-box 属性---元素的border 和 padding 影响内容的 width 和 height解决方案
/* 关键字 值 */ box-sizing: content-box; box-sizing: border-box; /* 全局 值 */ box-sizing: inherit; box-siz ...
- pyhon 去除列表中重复元素
Python set() 函数 描述 set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集.差集.并集等. 语法 set 语法: class set([iterabl ...
- invoke方法
主要是为了类反射,这样你可以在不知道具体的类的情况下,根据配置的字符串去调用一个类的方法.在灵活编程的时候非常有用.很多框架代码都是这样去实现的.但是一般的编程,你是不需要这样做的,因为类都是你自己写 ...
- FNDLOAD Commands to Download Different Seed Data Types. (DOC ID 274667.1)
In this Document Goal Solution References Applies to: Oracle Application Object Library - Version 11 ...
- 使用python读写excel
项目中要在excel要跨工作簿根据一列数据获取另一列的数据,而excel本身的函数vlookup一直不太好用,只能用程序进行处理了,最近刚接触了python,灵机一动使用Python进行处理,先将js ...
- .Net Core使用HttpClient请求Web API注意事项
HttpClient 使用HttpClient可以很方便的请求Web API,但在使用时有一些需要注意的地方,不然会给你的程序带来毁灭性的问题. HttpClient是一个继承了IDisposable ...
- JAVA异常的最佳工程学实践探索
此文已由作者占金武授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 先说明一下背景: 项目日志中的Exception会被哨兵统一监控并报警 比较多的项目基于dubbo在做服务化 ...
- djang系列5.5-- 图书管理系统实例
一.表格设计 E-R图 分析图 models.py from django.db import models # Create your models here. class Author(model ...
- Syncthing源码解析 - 源码目录说明!
Syncthing是一个免费开源的p2p软件,Go语言编写的! 官网:https://syncthing.net/ 源码:https://github.com/syncthing/syncthing/ ...