这些概念听起来很火,当下也很流行,真正理解起来却并非易事。如果让我来全面的解释Web App和Hybird App,我觉得还有些困难。

这篇文章只是我深入了解移动领域开发过程中的不断整理和总结,其中涉及到很多概念,观点,个人的看法,有不确切的地方,欢迎指正。

阅读这篇文章,您将了解到

移动网站版本现状

Web App 出现

web app由wap站发展而来

Web App 与移动站点区别

web app 与native区别

Hybird App 出现

更新与性能的矛盾

参考

移动网站版本现状

为了满足不同用户需求,移动网站一般分为3个版本  简版,触屏版,脑版。触屏版大多启用html5开发。笔者认为电脑版基本在手机端不可用。

以下是几个大公司的移动版本比较。

     

简版

触屏版

电脑版

凡客

   

简版

http://m.vancl.com/?r=668

触屏版

http://m.vancl.com/

电脑版

     
   
去哪儿

触屏版

http://touch.qunar.com/

电脑版

大众点评

触屏版

http://m.dianping.com/

普通版

http://wap.dianping.com/

当当网

触屏版

http://m.dianping.com/

普通版

http://wap.dianping.com/

单纯点说,触屏版专为大屏幕的触屏手机设计,而彩版在传统智能机上应用也很多。

从技术上讲现在常见的手机网站,所谓的触屏版很多都是以html5开发的了;而所谓的彩版WAP网站,普遍是基于WAP2.0开发的;在技术上,两者就不是一个层面。

因为开发技术的不同,让触屏版通常拥有更好的视觉效果及交互方式。这点在控件的使用上尤其明显。由此也有引出两者设计风格的区别。

Web App 出现

web app由wap站发展而来

AppCan 为Web App的定义是:

打包您的wap网站入口并生成应用,用户安装应用后无需输入网址,点击击图标直接访问你的网站。

http://doc.appcan.cn/dev_web.html#dev2

如果在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快速生成工具、分发机制和运行平台

http://www.36kr.com/p/203238.html

何为Web App,何为Hybird App的更多相关文章

  1. 开发框架-APP:Hybird App

    ylbtech-开发框架-APP:Hybird App Hybrid App(混合模式移动应用)是指介于web-app.native-app这两者之间的app,兼具“Native App良好用户交互体 ...

  2. HyBird App(混合应用)核心原理JSBridge

    目录 app分类 HyBird App(混合应用) JSBridge介绍 优势及应用场景 JsBridge的核心 1.Web端调用Native端代码 1.1 拦截URL Schema 1.2 注入ap ...

  3. Web App, Native APP,Hybird App 介绍

    一.Web App 这个主要是采用统一的标准的 HTML,JavaScript.CSS 等 web 技术开发. 用户无需下载,通过不同平台 的浏览器访问来实现跨平台, 同时可以通过浏览器支持充分使用 ...

  4. Cordova+ionic 开发hybird App --- 开发环境搭建

    Cordova 开发hybird App 开发环境搭建 一.一些基础概念: Ant : 简单说来可以这么理解,如果你用记事本写JAVA程序,然后在cmd里输入javac命令编译它,但是有一天你发现每次 ...

  5. 用ionic快速开发hybird App(已附源码,在下面+总结见解)

    1.ionic简介 ionic 是用于敏捷开发APP的解决方案.核心思路是:利用成熟的前端开发技术,来写UI和业务逻辑.也就是说,就是一个H5网站,这个区别于react-native,native.即 ...

  6. hybird app混合开发介绍

    一 概念 1 Hybird App,是用现有前端(html,js,css)技术来开发的app.特点:1 灵活(开发灵活 ,部署灵活) 2 拥有类似原生的性能体验. 2 不是h5页面,也不是在webvi ...

  7. native app、web app、hybrid app、react-native 区别

    Native App:指的是原生应用程序,一般依托于操作系统,有很强的交互. 技术:Objective-C Java Native App开发的优点 提供最佳的 户体验 拥有系统级别的通知或提醒 可以 ...

  8. Hybird App(一)----第一次接触

    App你知道多少 一 什么是Native App 长处 缺点 二 什么是Web App 长处 缺点 三 什么是Hybrid App 长处 缺点 四 Web AppHybrid AppNative Ap ...

  9. Hybird App ( 混合模式移动应用)开发初体验

    最近1,2个月一直都尝试开发一款Hybird app,遇到了很多问题,谈谈自己的体会. Hybird app (混合模式移动应用),它利用例如安卓端webview组件+HTML5内嵌的方式混合的方式开 ...

随机推荐

  1. oracle 11g 创建普通用户

    CREATE USER xiaoming IDENTIFIED by xm123123 GRANT CREATE SESSION TO xiaoming; GRANT RESOURCE TO xiao ...

  2. 书籍索引 #C++

    卷 计算机 的文件夹 PATH 列表卷序列号为 00000200 0001:8890F:.│ 21天学通C++.pdf│ C++ Primer Plus 第6版 中文版.pdf│ C++ Templa ...

  3. Mybatis 模糊查询 like【笔记】Could not set parameters for mapping

    当使用mybatis 做模糊查询时如果这样写 会报 Could not set parameters for mapping: ParameterMapping{property='keywords' ...

  4. corss、inner、outer三种join方式

    cross join(没有on)inner join(一般用于交集)outer join(你懂得)后面两个 on 1=1 效果同cross join

  5. WPF 卡顿调试经验

    1. 问题 最近的一个项目,正常调试情况下,运行一切正常,但是有某个用户登录后,出现界面卡顿2-3mins后,才正常运行. 2.解决问题方法 (1)首先由于是必现问题,就想在vs的工作环境下调试一下, ...

  6. 遇到问题-----cas4.2.x登录成功后报错No principal was found---cas中文乱码问题完美解决

    情况 我们之前已经完成了cas4.2.x登录使用MongoDB验证方式并且自定义了加密. 单点登录(十五)-----实战-----cas4.2.x登录mongodb验证方式实现自定义加密 但是悲剧的是 ...

  7. WPF 背景网格图

    利用DrawingBrush来画出背景网格图 <DrawingBrush Viewport="0,0,80,80" ViewportUnits="Absolute& ...

  8. Java50道经典习题-程序18 乒乓球赛

    题目:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定比赛名单.有人向队员打听比赛的名单. a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单.分析: ...

  9. 【Oracle 12c】最新CUUG OCP-071考试题库(55题)

    55.(13-3) choose the best answer: Which statement is true regarding the SESSION_PRIVS dictionary vie ...

  10. Java多线程编程 — 锁优化

      阅读目录 一.尽量不要锁住方法 二.缩小同步代码块,只锁数据 三.锁中尽量不要再包含锁 四.将锁私有化,在内部管理锁 五.进行适当的锁分解 正文 并发环境下进行编程时,需要使用锁机制来同步多线程间 ...